Inspectopedia Help

Probable bugs

Name

Language

'Comparable' implemented but 'equals()' not overridden  

Java

'Iterator.hasNext()' which calls 'next()'  

Java

'Iterator.next()' which can't throw 'NoSuchElementException'  

Java

'Math.random()' cast to 'int'  

Java

'ScheduledThreadPoolExecutor' with zero core threads  

Java

'String.equals()' called with 'CharSequence' argument  

Java

'Throwable' not thrown  

Java

'assert' statement with side effects  

Java

'equal()' instead of 'equals()'  

Java

'equals()' and 'hashCode()' not paired  

Java

'equals()' between objects of inconvertible types  

Java

'equals()' called on array  

Java

'equals()' called on classes which don't override it  

Java

'equals()' called on itself  

Java

'equals()' method which does not check class of parameter  

Java

'hashCode()' called on array  

Java

'instanceof' with incompatible interface  

Java

Array comparison using '==', instead of 'Arrays.equals()'  

Java

Call math rounding with 'int' argument  

Java

Call methods with unsupported 'java.time.temporal.ChronoUnit' and 'java.time.temporal.ChronoField'  

Java

Call to 'toString()' on array  

Java

Call to default 'toString()'  

Java

Cast conflicts with 'instanceof'  

Java

Casting to incompatible interface  

Java

Cleaner captures object reference  

Java

Collection added to itself  

Java

Confusing 'main()' method  

Java

Confusing argument to varargs method  

Java

Confusing primitive array argument to varargs method  

Java

Constant condition in 'assert' statement  

Java

Constant values  

Java

Contract issues  

Java

Copy constructor misses field  

Java

Covariant 'equals()'  

Java

Duplicated delimiters in 'StringTokenizer'  

Java

Inconsistent whitespace indentation in text block  

Java

Incorrect 'DateTimeFormat' pattern  

Java

Incorrect 'MessageFormat' pattern  

Java

Infinite recursion  

Java

Inner class referenced via subclass  

Java

Instantiation of utility class  

Java

Invalid method reference used for 'Comparator'  

Java

Iterable is used as vararg  

Java

Loop executes zero or billions of times  

Java

Magic Constant  

Java

Malformed format string  

Java

Meaningless record annotation  

Java

Mismatched case in 'String' operation  

Java

Mismatched query and update of 'StringBuilder'  

Java

Mismatched query and update of collection  

Java

Mismatched read and write of array  

Java

New object is compared using '=='  

Java

Non-final field referenced in 'compareTo()'  

Java

Non-final field referenced in 'equals()'  

Java

Non-final field referenced in 'hashCode()'  

Java

Non-short-circuit boolean expression  

Java

Non-short-circuit operation consumes infinite stream  

Java

Nullability and data flow problems  

Java

Number comparison using '==', instead of 'equals()'  

Java

Object comparison using '==', instead of 'equals()'  

Java

Optional.get() is called without isPresent() check  

Java

Overwritten Map, Set, or array element  

Java

Redundant operation on empty container  

Java

Reference checked for 'null' is not used inside 'if'  

Java

Reflective access to a source-only annotation  

Java

Result of method call ignored  

Java

Result of object allocation ignored  

Java

Sorted collection with non-comparable elements  

Java

Statement with empty body  

Java

Static field referenced via subclass  

Java

Static method referenced via subclass  

Java

String comparison using '==', instead of 'equals()'  

Java

String concatenation as argument to 'MessageFormat.format()' call  

Java

String concatenation as argument to 'format()' call  

Java

StringBuilder constructor call with 'char' argument  

Java

Subtraction in 'compareTo()'  

Java

Suspicious 'Arrays' method call  

Java

Suspicious 'Class.getClass()' call  

Java

Suspicious 'Collection.toArray()' call  

Java

Suspicious 'Comparator.compare()' implementation  

Java

Suspicious 'InvocationHandler' implementation  

Java

Suspicious 'List.remove()' in loop  

Java

Suspicious 'System.arraycopy()' call  

Java

Suspicious array cast  

Java

Suspicious byte value returned from 'InputStream.read()'  

Java

Suspicious collection method call  

Java

Suspicious date format pattern  

Java

Suspicious indentation after control statement without braces  

Java

Suspicious integer division assignment  

Java

Suspicious regex expression argument  

Java

Suspicious ternary operator in varargs method call  

Java

Suspicious usage of compare method  

Java

Suspicious variable/parameter name combination  

Java

Text label in 'switch' statement  

Java

Unsafe call to 'Class.newInstance()'  

Java

Unused assignment  

Java

Use of 'Properties' object as a 'Hashtable'  

Java

Use of Optional.ofNullable with null or not-null argument  

Java

Use of index 0 in JDBC ResultSet  

Java

Use of shallow or 'Objects' methods with arrays  

Java

Verify Java documentation  

Java

Whitespace may be missing in string concatenation  

Java

Write-only object  

Java

Wrong package statement  

Java

Last modified: 13 July 2023