私有最终 HashSet 是如何工作的? [复制]

Posted

技术标签:

【中文标题】私有最终 HashSet 是如何工作的? [复制]【英文标题】:How does a private final HashSet Work? [duplicate] 【发布时间】:2015-10-20 18:08:48 【问题描述】:

所以根据我对 final 的理解,你不能改变变量 after 的值。在private final foo HashSet<>() = new HashSet<>() 的情况下,我可以使用 foo 作为 HashSet 并编辑其中的值,但我不能重新分配 foo 对吗?

【问题讨论】:

【参考方案1】:

final 会阻止您为变量分配任何新值,但不会使您的对象不可变。

在你的例子中,

private final foo HashSet<String>() = new HashSet<>();
foo.put("bar");              // is correct
foo = new HashSet<>();       // will fail at compilation

【讨论】:

以上是关于私有最终 HashSet 是如何工作的? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

SVN简介

Hashset叫“hash”集? [复制]

如何通过构造 Double 来初始化 HashSet 值? [复制]

如何在java中从可变对象创建不可变对象? [复制]

Java基础篇 如何使用HashSet

Java 中的 HashSet,内部是如何工作的?