gpt4 book ai didi

java - 能否通过Guava库提供的Maps.filteKey/Value方法实现类似数据库的Limit功能

转载 作者:行者123 更新时间:2023-11-29 05:32:28 25 4
gpt4 key购买 nike

需要关于如何将限制定义为 Google Guava 库提供的 Maps.filterKeys 方法的参数的任何输入,以便一旦达到限制就无需进一步迭代。

我有以下要求,其中有 Map 和 Predicate(在本例中为 Filter)。

像下面这样 Maps.filterKeys(myMap, myPredicate);

Map 有大约 5000 个键和值,一旦谓词满足一定次数,我就想要这些值。我不想迭代更多而是返回 filteredMap。

有没有什么办法,或者我们需要请 Guava 团队添加相同的作为输入参数。

最佳答案

Maps.filterKeys() 中正在进行 0 次迭代。 The javadoc解释一下:

Returns a map containing the mappings in unfiltered whose keys satisfy a predicate. The returned map is a live view of unfiltered; changes to one affect the other.

因此,它不会返回经过过滤的 map 副本,而是经过过滤的 View 。

如果您想要过滤后的副本,则必须遍历过滤后 map 的 entrySet() 并填充一个新 map ,直到达到您的限制。

关于java - 能否通过Guava库提供的Maps.filteKey/Value方法实现类似数据库的Limit功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20651394/

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