使用java,有没有办法将数组中的某些值设置为静态/不可编辑?我正在尝试制作一个数独游戏,所以我希望设置初始数字,这样程序就无法改变它们,但其他数字可以改变。到目前为止,我已经完成了一些谷歌搜索,但我的搜索都没有提出任何相关信息。
答案 0 :(得分:2)
您必须通过将其隐藏来隐藏数组。永远不要返回对数组的引用,而是返回一个克隆。
e.g。
public class ArrayHolder {
private String[] array;
public ArrayHolder(String[] inputArray) {
//make a copy of inputArray
//assign the reference to the copy to this.array
}
public String[] getArray() {
//make a copy of the array
//return the reference to the copy
}
}
至于使一些元素可更新,你必须在类中编写mutator方法,这样只有那些方法才能改变数组中的某些元素。