我正在尝试找到在java中保留集合前半部分的最佳方法。 我的 Set (java.util.Set) 包含 60000 个元素,我只需要保留其中的前 30000 个。
最好的方法是什么?
使用Guava库,我们可以使用Lists.partition()方法将列表分割成连续的子列表,每个列表指定大小
Java 文档:
您也可以使用
https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true#subList-int-int-
专为套装
Set<Integer> subset = ImmutableSet.copyOf(Iterables.limit(set, 30000));
番石榴文档:
用户流:
yourSet.stream().limit(30000).collect(Collectors.toSet());