作者热门文章
- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有配置了 NavigableIndex
的 com.googlecode.cqengine.IndexedCollection
对象。一般来说,我需要从索引或索引的迭代器中获取第一项或最后一项。
我想这应该是微不足道的。我知道我可以使用 queryOptions 对象创建 Query 对象,使用它从 IndexedCollection 中检索迭代器并获取第一个对象,但我不确定它是否是性能最佳的。这肯定不优雅。
最佳答案
在 miradham 的帮助下,我发现我需要记住索引,因为如果我们有更多索引,就很难选择正确的索引。它只适用于 NavigableIndex
,我们不能迭代基类 Index
collection = new ConcurrentIndexedCollection<Data>();
index = NavigableIndex.onAttribute(Data.UNIQUE_TIMESTAMP);
collection.addIndex(index);
当我有索引时:
try (CloseableIterator<KeyValue<String, Data>> iterator = indexUniqueTimestamp.getKeysAndValuesDescending(null).iterator()) {
if (iterator.hasNext())
return iterator.next().getValue();
}
return null;
关于java - 如何使用 NavigableIndex 从 cqengine IndexedCollection 获取第一个或最后一个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51308612/
当前,当我向 IndexedCollection 添加元素时遇到此错误: HIGHEST: null java.lang.NullPointerException at java.util.c
我有配置了 NavigableIndex 的 com.googlecode.cqengine.IndexedCollection 对象。一般来说,我需要从索引或索引的迭代器中获取第一项或最后一项。 我
我是一名优秀的程序员,十分优秀!