问题标签 [eclipse-collections]
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.
eclipse-collections - eclipse-collections 源 jar 在哪里?
我找不到这些工件:
- eclipse-collections-api-7.1.0-sources.jar
- eclipse-collections-7.1.0-sources.jar
我最终自己创建了它们,但这很痛苦,因为构建在 OSX 和 Windows 上被破坏了。
java - 为什么大多数 Eclipse 集合类型都是可序列化的?
我在这里寻找设计原理。
我当然可以理解使集合类可序列化,尽管 JCF 不这样做。然而,Procedure
,等接口尤其是不存在IntProcedure
的主要候选者,因为它们通常是匿名的。Serializable
制作这些接口Serializable
违背了 Josh Bloch 的建议,即接口应该很少扩展Serializable
[1]。
我可能需要更新我的 Eclipse 首选项,不要为每个匿名的Procedure
.
[1] 有效的 Java 第 2 版。第 291 页
java - HashBag 就地删除
有大量元素保存在HashBag
(Eclipse Collections 框架)中。现在应该删除所有出现次数少于 k 的元素。
这可以通过以下方式完成:
缺点是,这会创建一个临时 bag 实例,在我们的例子中会消耗大量内存。
所以我正在寻找一种就地删除方法,例如使用迭代器。返回的迭代器iterator()
在一个元素上迭代 n 次,出现 n 次,这在 CPU 上是不合适的。更好的是迭代底层的所有不同键ObjectIntMap
。在源代码中,您可以找到一个方法AbstractHashBag.getKeysView()
,但它是受保护的。有没有办法通过公共 API 或任何其他想法就地删除这些元素?
java - 您将如何在列表上执行 removeIf 或为 eclipse 集合中的原语设置?
在常规的 java 集合中,可以删除给定 input 的元素Predicate
。
persons.removeIf(person -> person.isMale());
在 eclipse 集合中,只要使用的集合 extends 似乎就可以做到这一点Iterable<T>
。
对于扩展的原始集合,PrimitiveIterable
似乎没有提供方法来做同样的事情。不支持吗?如果不是,为什么?
编辑:我应该补充一点,我正在寻找一种在不创建新集合的情况下就地删除项目的方法,就像拒绝一样。
java - 在 Android 中使用 Ecipe Collections - build.gradle 失败
对于我正在开发的 Android 项目,我需要*使用 Eclipse Collections 框架。所以我build.gradle
根据他们的“入门”将它集成到我的,并导入了所需的库。问题是,当我尝试在我的 Android 设备上运行该应用程序时,它失败并显示以下消息:
错误:任务':app:transformResourcesWithMergeJavaResForDebug'的执行失败。发现多个文件具有独立于操作系统的路径“LICENSE-EDL-1.0.txt”
我做了一些谷歌搜索,并在 Stackoverflow 上遇到了一些类似(尽管不相同)的问题,但没有一个建议的解决方案对我有用(其中大多数建议添加packagingOptions
到build.gradle
)。如果这很重要 - 我的应用程序使用 OpenCV4Android,我正在 Android Studio 中开发它。
此外,为了清楚起见,没有 Eclipse-Collections 添加一切正常。
这是我的应用程序的build.gradle
:
* 这不是必须的,但它使我的代码更加简单和优雅,我真的很想拥有它。
java - 如何使用 Eclipse Collections 将 MutableMap 转换为 ObjectDoubleMap?
如何转换MutableMap<String, Double>
为ObjectDoubleMap<String>
使用 Eclipse Collections?
在我的用例中,我有一个可变映射,它是聚合结果。例如;
我必须调用另一种只接受的方法ObjectDoubleMap<String>
,我怎样才能转换map
为一种类型ObjectDoubleMap<String>
?我别无选择,只能使用 Eclipse Collections 框架。
java - Eclipse Collections 是否被 Java 8 弃用了?
我最近偶然发现了 Eclipse Collections,它们看起来棒极了——几乎和 Java 8 流看起来一样棒。我通读了一些介绍、演示文稿和教程,似乎 EC 添加的几乎所有内容,现在都可以使用流来完成。
没有任何贬低 EC 的意思,既然我们有流,图书馆是否还有任何价值,这可能在我读到的内容中被掩盖了?还是它本质上走的是乔达时代的道路?如此之好以至于它几乎一字不差地被采用到 Java 中,从而否定了对库的需求?
java - Eclipse Collection 对生产代码的使用
https://www.eclipse.org/collections/现在似乎越来越流行了。只是想知道,是否有人在他们的生产代码中使用过这个库,整体体验如何。
eclipse-collections - 使用 Eclipse Collections 库,如何根据值对 MutableMap 进行排序?
假设我有MutableMap<String, Integer>
,并且我想对Integer
值进行排序。
用这个库推荐的方法是什么?Eclipse Collections 库是否有实用程序或方法或推荐的方法来解决这个问题?
例如,假设:
我想最终得到一个MutableMap<String, Integer>
包含相同元素,但排序/排序的第一个元素(“One”,1),第二个元素(“Two”,2)和第三个元素(“三”,3)。
java - Eclipse Collections 通过自定义的类似比较器的函数对 IntList 进行排序,无需装箱
我正在尝试对一些 ( Mutable
)IntList
对象进行排序。装箱/拆箱整数的成本与我的程序相关(这正是我使用原始集合的原因)。我想按以下标准排序:
- 所有负数都在非负数之前
- 首先是最小(最接近于零)的数字
[1, 7, 0, -9, -3] -> [-3, -9, 0, 1, 7]
Eclipse Collections 库中的类是否有IntList
允许自定义比较器的排序方法?到目前为止我还没有找到它,但是定义的符号列表很大,搜索框只匹配精确的字符串,并且几乎不存在文档(我相信大部分是从方法签名自动生成的)。
我最后的手段是编写自己的 int-int 比较器和排序函数,这没什么大不了的,但我宁愿不这样做。
请不要浪费您的时间来编写概念证明分类器,我将不胜感激。我知道如何对列表进行排序,但我只是不知道如何在 Eclipse Collections 文档中找到东西。如果您可以提供帮助,请随时将其包含在您的答案中。