如果我有
String[] arr = new String[6]
我可以使用哪些代码使其永久化?我还没有尝试过,我发现很难得到这些具体信息。
由于
答案 0 :(得分:0)
数组的主要问题是它们很难锁定
使用final String[] arr = {"a", "b"};
阻止尝试将arr
设置为新值,但使用arr[0] = "c";
仍然有效
相反,更容易将其保密,并且永远不会在代码中更改
如果要将此列表发送到其他地方且不得修改,则可以使用unmodifiableList对象
List<String> arr = new ArrayList<String>();
arr.add("a");
arr.add("b");
arr = Collections.unmodifiableList(arr);
这不完全安全,因为reflection仍然可以修改值(example),但它应该足以避免编码时出错