问题标签 [apache-commons-collection]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java Commons Collections removeAll
CollectionUtils::removeAll() Commons Collections 3.2.1
我一定要疯了,因为这种方法似乎与文档状态相反:
从集合中移除 remove 中的元素。也就是说,此方法返回一个集合,其中包含 c 中所有不在 remove 中的元素。
这个小小的 JUnit 测试
失败了
java.lang.AssertionError: 预期:<2> 但是是:<1>
并打印
根据我对文档的阅读,我应该期待[bar, qux]
。我错过了什么?
java - 我如何学习使用 Java 公共集合?
奇怪的标题,我知道,让我解释一下。
我是最熟悉 C# 和 Javascript 的开发人员。我完全沉浸在那些半功能性的世界中,以至于我的大部分代码都是关于映射/减少/过滤集合的。在 C# 中,这意味着我几乎在任何地方都使用 LINQ,在 Javascript 中则是 Underscore.js 和 jQuery。
我目前被分配到一个正在进行的 Java 项目,我感到相当窒息。我根本不认为“创建一个数组,将东西从一个到另一个”。我可以(并且确实)使用实现接口的匿名类型创建自己的主要 map/reduce 函数版本,但为什么要重新发明轮子呢?我目前正在进行的项目已经有 commons-collections-3.1.jar 并且查看包含的类似乎可以做我想要的一切以及更多。
对于我的生活,我找不到如何实际使用它。浏览其中的几十个类并不是很有帮助,我唯一能用谷歌搜索的是同样有用的 api 文档。
您如何使用它来映射/选择、过滤/位置、减少/聚合?是否有任何地方提供有关该库的实际教程?
java - 使用 FIFO 缓冲区的正确方法
我有这个 FIFO,我将用它来存储来自网络服务器的数据:
我的问题是存储数据插入和从缓冲区获取数据的正确方法是什么?如果或这是由缓冲区完成的,我是否需要删除数据?你知道我可以存储到缓冲区中的最大字符串长度是多少吗?
java - Comparator/Comparable/ComparatorChain 问题
我正在实现一个处理Comparator
和Comparable
接口的层次结构。我不清楚的几件事:
如果我将比较器添加到比较器链中,那么这段代码到底是什么意思
chain.addComparator(new sortByTitle());
我知道
sortByTitle()
参数必须是比较器,但我不明白你是如何实现这样的函数的?比较器需要你实现一个compare(obj1, obj2)
函数,它需要两个参数来比较一个和另一个,你如何从这个函数中得到一个没有参数的(看起来像构造函数)调用?假设我实现了一个名为的类
Database
,它将一些项目存储在一个ArrayList
被调用的item
. 该变量item
本身就是一个私有变量。现在在主程序中,进行了这样的调用:Collections.sort(library.item, chain);
怎么可能直接访问对象库的实例
item
?item
需要私有的数据库状态规范,这可以吗?
我将不胜感激任何帮助。
java - 通过 Person 对象的 getName() 属性将 Person 对象列表转换为单独的 String
有没有XXXUtils
我可以做的地方
其中"name"
是来自aList
.
我发现只有StringUtils
方法join
,但它只会将 aList<String>
转换为分离的String
.
就像是
这很快,值得使用。BeanUtils 抛出 2 个检查异常,所以我不喜欢它。
java - 将 MapIterator 返回的 MultiKey 分解为各个键
我正在使用 Apache Commons Collections 创建一个 MultiKeyMap,它将存储两个具有一个对应值的键,然后使用 MapIterator 遍历地图。我遇到的问题是我需要将 MapIterator 返回的键分解回单个键而不是单个“复合”。虽然我可以拆分包含“复合”键的字符串或使用反射,但这些选项都不是很优雅。
为了对问题进行建模,我创建了以下示例代码
it.getKey()
myKey1 = it.getKey().keys[0]
返回 MultiKey[Key 3A, Key 3B] 但我想要做的是将键分配给单个变量,类似于myKey2 = it.getKey().keys[1]
但我在 JavaDoc 中找不到任何东西来实现这一点。
是否可以在不使用反射或操作 it.getKey() 返回的字符串的情况下将 MapIterator 返回的键分解为单个键?
java - 一个用于从 Set 中获取子列表的衬垫
是否有一个单行(可能来自 Guava 或 Apache Collections)从集合中获取子列表。在内部它应该做这样的事情:
显然,如果没有足够的元素,它必须返回尽可能多的元素。
java - 空安全集合包含方法
contains
在 Java 集合上 执行 null 安全的最佳方法是什么?
换句话说 -
?
我希望 Apache commons-collections 有类似的东西CollectionUtils.contains(collection, x)
,如果集合为 null,则只会返回 false,就像 withsize()
一样,它将 null 视为空集合。
然而,似乎没有这样的事情——我只是错过了吗?