繁体   English   中英

类型安全有效只读 java collections?

[英]Typesafe effectively read only java collections?

我正在为 collections 搜索一个 java 库,没有允许突变的方法。 有效不可变只读 collections。

我的意思是,没有方法。 与通常的 Java 不可变 collections 不同,它具有addremove等方法,在调用时会抛出异常。 不...我希望编译器让我知道我正在尝试做一些不允许的事情,而不是在运行时出现一些错误。

我知道它存在是因为我用过它,但我不记得这样的库的名称。

Eclipse Collections: https://www.eclipse.org/collections/

他们自己关于不可变 collections 的指南说:

Eclipse Collections 中的所有基本容器都具有可变和不可变(不可更改)forms 的接口。这与 JCF model 有所不同,其中大多数容器是可变的。

不可变集合就是这样——一旦创建,就永远无法修改,在其整个生命周期内保留相同的内部引用和数据。 一个不可变集合等于对应的具有相同内容的可变集合; MutableListImmutableList可以相等。

Guava不可变 collections使用@Deprecated声明可变方法,因此使用它们会发出编译器警告。

这可能是两全其美的方法,因为它允许在需要Collection的地方传递ImmutableCollection

我正在为 collections 搜索 java 库,但没有允许突变的方法。 有效不可变只读 collections。

我的意思是,没有方法。 不像通常的 Java 不可变 collections 具有addremove等方法,在调用时会引发异常。 不...我希望编译器让我知道我正在尝试做一些不允许的事情,而不是在运行时出现一些错误。

我知道它的存在是因为我使用过它,但我不记得这样的库的名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM