java - 根据元素的几个类别对大列表进行排序或分离

标签 java sorting data-structures

我有一个大约有一千个元素的大型 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/

相关文章:

java - 在 Java 中自定义排序的最佳方式?

sorting - SOLR 按相关性排序

java - 我们可以使用尝试解码霍夫曼码吗

java - Java API 或开源库是否提供具有恒定时间查找的类似 TreeMap 的数据结构?

java - 如何从java保存SQL Server 2014中的日期时间列值

java - 如何将位图添加到图库中的特定相册?

java - 解析 xml 文件中引用 xml 文件的实体 (android)

java - Autowiring 变量的方法为 null

python - Pandas Python : sort dataframe but don't include given row

c - 链表 - 在 C 中的链表末尾插入一个节点