当我们创建空的不可变列表集合映射时,是否有任何实际的应用用例

当我们创建空的不可变列表集合映射时,是否有任何实际的应用用例,第1张

当我们创建空的不可变列表/集合/映射时,是否有任何实际的应用/用例

Java的9点之前,人们一度

Collections.emptyList()
Collections.emptySet()
Collections.emptyMap()
,这是明确的,并
完全 致力于生产不可修改的空集合。那
List.of()
。能否做到这一点还取决于他们API的内部一致性,而不是革命性的新功能。

但是你的主要问题似乎是

请帮助我了解一个空的不可变列表/集合/映射的实际用例。

这实际上是三个问题:

  1. 空集合的用例是什么?

空集合很有用,因为它们是现实数据和算法中情况的自然表示。例如,“到目前为止,哪些乘客已经办理登机手续?”
当没有。哪些任务正在等待发送?我可以无休止地继续下去。

  1. 不可修改集合的用例是什么?

可以传递对不可修改集合的引用,而不必担心该集合将被修改(无论如何通过该引用)。很好地注意,假设已正确记录了不可修改性,则共享该对象的 所有参与者
都可以依靠它而不进行更改。除其他事项外,这对于安全共享集合(和其他不可修改的对象)而不制作副本很重要。

  1. 这些用例的交集是什么?

空集合自然出现在现实世界的数据和算法中,因此,大多数不可修改集合的用例都包含空集合。


此外,您没有提出询问,但是可能会忽略,尽管您不能将对象添加到不可修改的空集合中,但是您可以将其完全替换为非空集合,或者在下次或类似情况下提供非空集合。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5601555.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存