Using magic numbers can lead to unclear code, as well as errors if a magic number is changed in one location but remains unchanged not another. The numbers 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 100, 1000, 0L, 1L, 2L, 0.0, 1.0, 0.0F and 1.0F are not reported by this inspection.
Example:
void checkFileSize(long bytes) {
if (bytes > 1_048_576) {
throw new IllegalArgumentException("too big");
}
}
A quick-fix introduces a new constant:
static final int MAX_SUPPORTED_FILE_SIZE = 1_048_576;
void checkFileSize(long bytes) {
if (bytes > MAX_SUPPORTED_FILE_SIZE) {
throw new IllegalArgumentException("too big");
}
}
Configure the inspection:
hashCode()
methods.Collection
, Map
,
StringBuilder
or StringBuffer
objects.