问题标签 [fastutil]

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 回答
205 浏览

java - 了解 Fastutil 内部的资源

我正在寻找资源来了解 Java 数据类型是如何在内部实现的,以及 Fastutil 和 Eclipse Collections 等库如何提供更快的相同实现。我厌倦了浏览 Github 上的代码库(分别为https://github.com/vigna/fastutilhttps://github.com/eclipse/eclipse-collections),但我只知道使用了代码生成器。

但是使用了哪些代码生成器?它们是如何使用的?为什么生成的代码性能更好?如果这些实现更好,为什么它们不是 Java 中的默认实现?

我正在寻找涵盖该主题的任何类型的资源/阅读清单。Youtube 和谷歌没有太大帮助。

谢谢

0 投票
1 回答
196 浏览

java - 迭代 fastutil 原始 ArrayList 的最佳实践,例如 IntArrayList?

IntArrayList什么最适合从 Java 中的fastutil 库中读取迭代?

fastutil 是一个库,用于提高标准库的集合类和算法所能做的性能。因此,在这种情况下,“最佳”意味着最佳性能。

我遵循了fastutil 文档中的建议,并将我的 IDE(Eclipse)设置为在发生装箱时发出警告:Window -> Preferences -> Java -> Compiler -> Errors/Warnings -> Potential Programming Problems -> Boxing and unboxing conversions - > 设置为警告
然而,Eclipse 似乎忽略了一些警告。有关详细信息,请参见下面的代码。

到目前为止,我遇到了这些替代方案进行迭代:

0 投票
0 回答
72 浏览

java - 关于 if(m==c)m=c 的 JRE 规范;及其意义

我最近看到了一些奇怪的代码。我无法理解它们的使用意义。
a在诸如fastutil 和 jhighlight 之if(m==c)m=c;类的库中出现之前没有任何意义。我已经在这个主题上搜索了很多,但令我惊讶的是,它似乎是 Java 规范,没有如此记录 - 可能是由于弃用等。如果有人能详细说明,我将不胜感激。

0 投票
1 回答
63 浏览

java - 需要优化的 Map(k,v) 例如 (long, long[]),以避免自动装箱

我有一段代码,基本上如下:

这些值是按顺序填写的,即 if ids = ['id1','id2',...] 这些值可能是
values = [['id2val1','id2val2',..]['id1val1','id2val2',...],..]
无法避免不按顺序执行的,我正在考虑的方法是使用 Map Map<Long,Long[]>
但由于 java 的自动装箱,不可能使用 JAVA 泛型。

我想知道它是否可以通过一些使用原语的优化数据结构库来完成,
以避免不必要的自动装箱,我正在寻找像Koloboke&之类的库Fastutil
寻找数据结构推荐