Inspectopedia Help

Statement can be replaced with 'assert' or 'Objects.requireNonNull'

Reports if statements that throw only java.lang.Throwable from a then branch and do not have an else branch. Such statements can be converted to more compact assert statements.

The inspection also reports Guava's Preconditions.checkNotNull(). They can be replaced with a Objects.requireNonNull() call for which a library may not be needed.

Example:

if (x == 2) throw new RuntimeException("fail"); if (y == null) throw new AssertionError(); Preconditions.checkNotNull(z, "z");

After the quick-fix is applied:

assert x != 2 : "fail"; Objects.requireNonNull(y); Objects.requireNonNull(z, "z");

Locating this inspection

By ID

Can be used to locate inspection in e.g. Qodana configuration files, where you can quickly enable or disable it, or adjust its settings.

IfCanBeAssertion
Via Settings dialog

Path to the inspection settings via IntelliJ Platform IDE Settings dialog, when you need to adjust inspection settings directly from your IDE.

Settings or Preferences | Editor | Inspections | Java | Control flow issues

By default, this inspection provides a quick-fix in the editor without code highlighting.

This inspection depends on the Java feature 'Assertions', which is available since Java 1.4.

Inspection Details

By default bundled with:

IntelliJ IDEA 2024.2, Qodana for JVM 2024.2,

Can be installed with plugin:

Java, 242.22892

Last modified: 11 September 2024