https://docs.pmd-code.org/pmd-doc-6.55.0/pmd_rules_java_codestyle.html#localvariablecouldbefinal
如果一个局部变量在运行过程中只需要赋值一次,那么可以定义为final的。
属性ignoreForEachDecl可以控制是否忽略对for-each声明中的局部变量的检查,默认值为false:
示例:
package com.thb;
public class Parent {
public void method() {
// 如果str1在运行过程中不允许被重新赋值,那么可以定义为final的
final String str1 = "hello";
// 如果str2在运行过程中允许重新赋值,那么不能定义为final的
String str2 = "world";
// do something
}
}