|
1
11
(下面是问题的答案) 你以外的人 -即API的客户端。
关键是,如文件所述:
举个例子:你有一个
现在来回答你的问题-不可修改的列表是一个 原始收藏。因此,如果您需要向其中添加一个新项目—例如,您发现了一个刚刚插入的新设备,那么客户机将能够在自己的浏览器中看到它 不可修改视图 |
|
|
2
3
|
|
|
3
2
根据文件:
|
|
|
4
1
The accepted Answer Bozho 是正确的。这里有更多的信息、示例代码和建议的替代方案。 不可修改列表由原始列表支持
那个
这在课程文档中有详细说明:
第四个词是关键:
故事的寓意:不要用集合.不可修改列表制作防御性的名单副本。
同上
下面是另一个例子来说明这个问题。
谷歌番石榴
而不是
你可以列一个新的清单。
不 影响(缩小)不变的列表。
但是请记住,虽然集合本身的定义是独立的,但是包含的对象由原始列表和新的不可变列表共享。在制作防御性拷贝时,我们没有复制“dog”对象。内存中只剩下一个dog对象,两个列表都包含指向同一个dog的引用。如果修改了“dog”对象中的属性,则两个集合都指向同一个dog对象,因此两个集合都将看到dogs fresh属性值。 |
|
|
5
0
我相信秘密在于实施细节。。。集合.不可修改列表()只会给你装饰可修改的列表。我的意思是不可修改列表包含对内部可修改列表的引用。 |
|
|
6
0
我发现一个办法就是
|
|
|
7
-2
|
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |