Inspectopedia 2025.3 Help

Local variable used and declared in different 'switch' branches

Reports local variables declared in one branch of a switch statement and used in another branch. Such declarations can be extremely confusing.

Example:

switch(i) { case 2: int x = 0; break; case 3: x = 3; System.out.println(x); break; }

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.

LocalVariableUsedAndDeclaredInDifferentSwitchBranches
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

Inspection ID: SwitchStatementWithConfusingDeclaration

Suppressing Inspection

You can suppress this inspection by placing the following comment marker before the code fragment where you no longer want messages from this inspection to appear:

//noinspection LocalVariableUsedAndDeclaredInDifferentSwitchBranches

More detailed instructions as well as other ways and options that you have can be found in the product documentation:

Inspection Details

By default bundled with:

IntelliJ IDEA 2025.3, Qodana for JVM 2025.3,

Last modified: 03 December 2025