标签: java list collections set
为什么标准库中不存在实现Set和List接口的类?链接集保留了集合的顺序,但不允许随机访问。
Set
List
为什么这不被视为有用?
答案 0 :(得分:2)
因为它很难有效地实现,至少如果你支持移除它。例如,Guava的ImmutableSet支持通过其asList()视图进行随机访问,但不支持变异。
ImmutableSet
asList()
答案 1 :(得分:2)
因为在不违反Set或List合同的情况下无法这样做。 Set可能不会重复。如果您将容器用作List并尝试添加副本会发生什么?