我有一个大约有一千个元素的大型 ArrayList。这些元素是用于测试的抽认卡。这些抽认卡都属于 13 个不同类别之一。如何根据类别将这个大集合分成不同的单独列表?
最佳答案
假设您有一个带有 getCategory()
方法的 FlashCard
类,您可以使用流来收集和分组这些...
// Given a list of FlashCard objects
final List<FlashCard> cards = ...
// Convert to stream, and collect them by category.
final Map<String, List<FlashCard>> byCategory = cards.stream()
.collect(Collectors.groupingBy(FlashCard::getCategory));
map 现在将类别表示为键,并将该类别中的每个 FlashCard
表示在列表中。
关于java - 根据元素的几个类别对大列表进行排序或分离,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45549111/