在setter方法中存储数组时遇到问题。我尝试通过以下解决方案解决此问题。
问题:
public void setMyArray(String[] myArray) {
this.myArray = myArray;
}
解决方案:
public void setMyArray(String[] newMyArray) {
if (newMyArray == null) {
this.myArray = new String[0];
} else {
this.myArray = Arrays.copyOf(newMyArray, newMyArray.length);
}
}
我也尝试使用clone()
方法,如下面的链接所述
Sonar Violation: Security - Array is stored directly
但摆脱声纳违规是没有用的。请建议我一些方法。提前致谢