Multimap of Multimap Java - 分类时间表
Multimap of Multimap Java - Categorize timetable
我已经解析了 HTML 时间 table 并将每个主题加载到我的 class 对象。
所以我有我的主题的 arrayList,其中包含姓名、老师、...、小时和日期的信息
现在我想重建 table ,所以我需要先对其进行分类。我认为最好的结构是这样的:
Monday: 1: Math, Czech, ...
2: History
...
Tuesday: 1: English, Geo
2...
...
给定的时间内可以有多个主题,因此我尝试使用Multimap的Multimap,但我无法在解析过程中声明它。
Multimap<String, Multimap<String, Subject>> timetable = HashMultimap.create();
...
for ...
timetable.put(subject.den, new HashMultimap<>(subject.hod, subject));
但是它说 HashMultimap 有私有访问 com.google.common...
我不知道如何正确地写这个。我也在考虑使用 Array,但我必须预先声明它并且我想在一个 for 循环中构建它。
有任何想法吗?提前谢谢你
看起来你想要的实际上更像是一个Map<String, Multimap<String, Subject>>
,在这种情况下你想要
Map<String, Multimap<String, Subject>> timetable = new HashMap<>();
for ...
Multimap<String, Subject> multimap = timetable.get(subject.den);
if (multimap == null) {
multimap = HashMultimap.create();
timetable.put(subject.den, multimap);
}
multimap.put(subject.hod, subject);
我已经解析了 HTML 时间 table 并将每个主题加载到我的 class 对象。 所以我有我的主题的 arrayList,其中包含姓名、老师、...、小时和日期的信息 现在我想重建 table ,所以我需要先对其进行分类。我认为最好的结构是这样的:
Monday: 1: Math, Czech, ...
2: History
...
Tuesday: 1: English, Geo
2...
...
给定的时间内可以有多个主题,因此我尝试使用Multimap的Multimap,但我无法在解析过程中声明它。
Multimap<String, Multimap<String, Subject>> timetable = HashMultimap.create();
...
for ...
timetable.put(subject.den, new HashMultimap<>(subject.hod, subject));
但是它说 HashMultimap 有私有访问 com.google.common... 我不知道如何正确地写这个。我也在考虑使用 Array,但我必须预先声明它并且我想在一个 for 循环中构建它。 有任何想法吗?提前谢谢你
看起来你想要的实际上更像是一个Map<String, Multimap<String, Subject>>
,在这种情况下你想要
Map<String, Multimap<String, Subject>> timetable = new HashMap<>();
for ...
Multimap<String, Subject> multimap = timetable.get(subject.den);
if (multimap == null) {
multimap = HashMultimap.create();
timetable.put(subject.den, multimap);
}
multimap.put(subject.hod, subject);