org.sonar.l10n.java.rules.squid.S1199.html Maven / Gradle / Ivy
Nested code blocks can be used to create a new scope and restrict the visibility of the variables defined inside it. Using this feature in a method typically indicates that the method has too many responsibilities, and should be refactored into smaller methods.
Noncompliant Code Example
public void evaluate(int operator) {
switch (operator) {
/* ... */
case ADD: { // Noncompliant - nested code block '{' ... '}'
int a = stack.pop();
int b = stack.pop();
int result = a + b;
stack.push(result);
break;
}
/* ... */
}
}
Compliant Solution
public void evaluate(int operator) {
switch (operator) {
/* ... */
case ADD: // Compliant
evaluateAdd();
break;
/* ... */
}
}
private void evaluateAdd() {
int a = stack.pop();
int b = stack.pop();
int result = a + b;
stack.push(result);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy