【发布时间】:2020-04-20 09:25:17
【问题描述】:
我们有一张学生地图要记录Map<Student, StudentRecord>。
学生班级如下:
Student {
String id;
String grade;
Int age;
}
此外,我们还提供了学生 ID (List<String>) 的列表。
使用 Java 流,过滤出其 ID 存在于提供的列表中的学生记录的最有效方法是什么?
预期的结果是映射到 Id(String) 的过滤列表 - <Map<Id, StudentRecord>>
【问题讨论】:
-
如果输入是
Map<Student,StudentRecord>,为什么输出是List<Map<Student,StudentRecord>>?输出不应该是Map<Student,StudentRecord>,其中一些条目被过滤掉了吗? -
而且无论如何,在找到“最有效的方法”之前,你应该先尝试找到“一种方法”。你试过什么吗?您面临的具体问题是什么?
-
根据 Eran 的观察编辑了问题。从未尝试过使用 java 流进行交集。
-
现在正是时候。提示:不要将其视为“十字路口”。把它想象成:我有一张地图,它是条目的集合,我只想要其中的一些。一旦我知道了我想要的,我想把它们存储在另一张地图中。
标签: java string list java-8 java-stream