java - Google Collections 相当于 Apache Commons Collections ArrayUtils.toObject 和 ArrayUtils.toPrimitive

标签 java arrays apache-commons guava

既然大家都赞Google Collections (例如在 here 中) 为什么我找不到 ArrayUtils.toObject()ArrayUtils.toPrimitive() 的等效项?有那么不能用吗?我错过了吗?

最佳答案

老实说,我不确定这些方法中的任何一个是否应该被视为与集合相关的操作,因此我想知道为什么它们一开始就在那里。

澄清一点,集合通常是一组对象,一些语义数据将它们绑定(bind)在一起,而数组只是一组预先确定的东西。此语义数据可能是关于接受或拒绝空值、重复项、错误类型的对象或具有 Not Acceptable 字段值等的信息。

大多数(如果不是全部的话)集合在内部使用数组,但是数组本身不是集合​​。要成为一个集合,它需要一些相关的魔法,例如在任意位置删除和添加对象,而数组不能这样做。我非常怀疑您是否会在 Google 集合中看到任何类型的数组支持,因为数组不是集合。

但是,由于 Google Collections 将成为 Google 的 Guava libraries 的一部分。这是一个通用的实用类库/框架,你可以从 com.google.common.primitives 中找到你想要的东西。包,例如 Booleans#asList(boolean... backingArray) Booleans#toArray(Collection<Boolean> collection) .

如果您绝对认为它们应该包含与 Apache Commons Collection 的 .toObject() 相同的方法和 .toPrimitive()在那里,你总是可以submit a feature request as new issue .

关于java - Google Collections 相当于 Apache Commons Collections ArrayUtils.toObject 和 ArrayUtils.toPrimitive,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1979923/

相关文章:

javascript - 解析Javascript SDK |将数组设置为未定义

java - 编译代码时找不到 writeStringToFile(File,String,Charset) 合适的方法

java - HSM 如何干预终端交易的加密?

调用使用指针接收数组的函数

java - 使用一个 Controller 播放/暂停多个 MediaView JavaFX FXML

python - 在 Python/Numpy 中一次分配相同的数组索引

java - "Cannot locate configuration source"在 Tomcat 中使用 commons-configuration XMLConfiguration

grails - 每个请求只能调用一次 ServletFileUpload.parseRequest() 吗?

java - 使用 CUDA 和 Java 分配大固定内存块

java - Heroku 中的 CPU/内存监控(适用于 Java)