gpt4 book ai didi

java - TreeMap 可以用来检索给定键值以上的所有键/值对吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:05:42 26 4
gpt4 key购买 nike

我有一段代码可以维护对具有给定 ID 的样本所做的修订图:

private Map<Long, SampleId> sampleRevisionMap = new HashMap<>();

在维护它的同时,其他线程可以调用以获取自给定修订号以来所做的所有更改。为了找到我做的相关 ID

public Set<SampleId> getRevisionIDs(long clientRevision) {
return sampleRevisionMap.entrySet().stream()
.filter(k -> k.getKey() > clientRevision)
.map(entry -> entry.getValue())
.collect(Collectors.toSet());
}

简而言之,给我键高于阈值的所有值。

有没有更好的方法来使用有序映射来做到这一点,即 java.utils.TreeMap?

最佳答案

是的,您可以调用 tailMap 来完成:

public Collection<SampleId> getRevisionIDs(long clientRevision) {
return sampleRevisionMap.tailMap(clientRevision).values();
}

上面也包括映射到 clientRevision 的值。如果您想要上面的所有内容,请改用 clientRevision+1

关于java - TreeMap 可以用来检索给定键值以上的所有键/值对吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37945962/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com