问题标签 [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.

0 投票
1 回答
299 浏览

scala - Apache 集合 UnmodifiableSet 到 scala 不可变集合

当我得到这个时我该怎么办?

0 投票
2 回答
1928 浏览

java - 用于特殊滚动、循环队列的 Java 集合

我正在寻找类似于 的东西ConcurrentLinkedQueue,但具有以下行为:

  • 当 I peek()/poll()队列时,它检索 HEAD,不删除它,然后将 HEAD 前进一个节点向 TAIL
  • 当 HEAD == TAIL 时,下一次 I peek()/ poll(), HEAD 重置为其原始节点(因此是“循环”行为)

因此,如果我像这样创建队列:

以这种方式,我可以整天偷看/轮询,队列将不断滚动浏览我的队列,一遍又一遍。

JRE 附带这样的东西吗?如果没有,也许 Apache Commons Collections 或其他第三方库中的某些东西?

0 投票
2 回答
7473 浏览

java - 使用自定义值集合类型创建 Commons Collections MultiValueMap

Apache Commons Collections库的 4.0 版本增加了泛型支持。我无法转换我的代码以利用它:

我想要一个MultiValueMap以字符串为键,以字符串集合为值的方法。但:

  1. 键应保留插入顺序(因此我通过装饰 a 创建多值映射LinkedHashMap
  2. 每个键的值应该是唯一的并保留插入顺序(所以我希望值 Collection 类型为 a LinkedHashSet)。

我能得到的最接近的是:

但这会产生错误:

multiValueMap(Map<K,? super C>, Class<C>)类型 中的方法MultiValueMap不适用于参数 (LinkedHashMap<String,Collection<String>>, Class<LinkedHashSet>)

所以现在我在泛型地狱。任何建议都将受到欢迎。

在 4.0 版之前,我通过以下方式实现了这一点:

简单的!我提供LinkedHashMap用行为来装饰,并指定要用作值MultiValueMap的集合类型 ( )。LinkedHashSet但这需要在我调用时进行转换put()get()因此我希望能够使用 4.0 提供的新通用版本。

0 投票
1 回答
1682 浏览

java - Java Servlet 错误 - JasperReport (ClassNotFoundException: org.apache.commons.collections.ReferenceMap)

基于 Java/Servlets/JasperReports 的应用程序之前工作正常,但现在不显示 PDF 报告并抛出java.lang.ClassNotFoundException

我使用图书馆:

  • commons-collections-3.2.1.jar
  • commons-digester-1.7.jar
  • commons-logging-1.1.3.jar
  • iText-2.1.7.js2.jar
  • jasperreports-5.2.0.jar
  • log4j-1.2.16.jar
  • postgresql-9.0-801.jdbc4.jar

堆栈跟踪:

0 投票
1 回答
1736 浏览

java - 我想使用 commons-collections4-4.0 ComparatorChain 进行排序

当我们使用最新的 commons-collections4-4.0jar 时,我们会收到一条错误消息,如下所示,关于使用 ComparatorChain 和 BeanComparator 进行排序选项。你知道这有什么问题吗?我们为 beanutils 使用 commons-bean utile-1.9.2.jar。

■成功代码(commons-collections-3.2.1.jar)

■失败代码(commons-collections4-4.0.jar)

错误日志

0 投票
1 回答
2960 浏览

java - 删除重复 CollectionUtils.collat​​e 方法

我试图通过使用 CollectionUtils.collat​​e 方法找到两个集合的联合。此方法来自包org.apache.commons.collections4

这是代码部分:

结果集合如下:

如您所见,生成的集合包含重复项,即使CollectionUtils.collat ​​e 的第三个参数表明我不想要重复项。

另外,字符串重复句子被消除了,但测试仍然存在。

我可以通过简单地将生成的集合放入HashSet来解决这个问题,但我想知道我做错了什么。

谢谢你。

0 投票
2 回答
1093 浏览

performance - Apache CollectionUtils 性能

如果有人对 Apache CollectionUtils 进行了基准测试,我正在徘徊。在我的简单基准测试中:

我得到以下结果:

我必须说我是这个库的忠实粉丝,因为它使代码干净且可测试,但目前我正在从事性能敏感的项目,我担心我对这个库的喜爱会损害性能。

我知道这是一个非常普遍的问题,但是有人将这个库用于生产环境吗?并注意到性能问题?

0 投票
2 回答
218 浏览

java - 有比较器吗> 或比较器>?

我正在寻找一个实现以下之一的类

为什么 Java 标准库/Apache Common/Google Guava 中没有这样的类?

0 投票
3 回答
48540 浏览

java - Java中的CollectionUtils使用谓词

我有一个List<Object>并且我想返回它找到的第一个与谓词匹配的值。

我发现我可以使用CollectionUtils.find(collection,predicate)(Apache commons)。假设Object包含一个名为 : 的整数变量value,我如何在谓词中指定该值可以是1,2,3,4,5并丢弃那些不匹配的值。是否有可能做'包含'。

也没有使用 java 8 所以无法做流。

0 投票
1 回答
171 浏览

classnotfoundexception - org.apache.commons.collections4 类的 TomEE 1.6.0.2 上的 ClassNotFoundException

当尝试在部署在 TomEE 1.6.0.2 (Tomcat 7.0.53) 上的 Web 应用程序中使用 org.apache.commons.collections4 jar 的类时,我得到了 ClassNotFoundException。

我将 Web 应用程序简化为一个简单的 HttpServlet,除了在 CollectionUtils 上调用一个方法之外什么都不做。在 pom.xml 中,除了对 org.apache.commons.collections4 的依赖之外别无其他。部署时,jar 位于 WEB-INF/lib 中。但是异常仍然被抛出。

当使用 apache commons collections 3.2.1 中的类时,一切都很好。

非常感谢任何有助于找到问题根源的提示和提示!谢谢,菲利克斯