Collections.singletonList()
在Java中有什么用?我知道它返回一个包含一个元素的列表。为什么我想要一个单独的方法来做到这一点?不变性如何在这里发挥作用?
这种方法有什么特别有用的用例,而不仅仅是一种方便的方法吗?
最佳答案
javadoc是这样说的:
"Returns an immutable list containing only the specified object. The returned list is serializable."
你问:
Why would I want to have a separate method to do that?
主要是为了方便……省去你写一系列语句的麻烦:
- 创建一个空列表对象
- 向其中添加一个元素,然后
- 用不可变的包装器包装它。
它也可能会更快一些和/或节省一些内存,但这些小的节省不太可能是显着的。 (至少可以说,创建大量单例列表的应用程序是不寻常的。)
How does immutability play a role here?
它是方法规范的一部分;见上文。
Are there any special useful use-cases for this method, rather than just being a convenience method?
显然,在某些用例中使用 singletonList
方法很方便。但我不知道您将如何(客观地)区分普通用例和“特别有用”的用例......
关于java - 使用 Java 的 Collections.singletonList()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4801794/