晚上好,
我正在试图找出是否有可能在一个数组中计算特定的课程。下面是我的例子。
示例:
list.add(new Student(" Bourne", "70","\tCOP2250, ENC3250, COP3530"));
list.add(new Student(" Gracia", "50","\tCOP2250, COP3250, COP4250"));
Output:
COP2250 - 2
COP3530 - 1
ENC3250 - 1输出应该和上面的一样。如果可以这样做,请告诉我,否则我需要单独整理课程。
提前感谢您的支持。
发布于 2017-04-23 00:32:22
你可以用这样的东西:
Map<String, Integer> cources = new HashMap<>();
for (Student s : list) {
//I assumed that eg. "\tCOP2250, ENC3250, COP3530" is in a (public) variable Cources
//in your Student class. You can replace this by a getter or whatever you need.
for (String name : s.Courses.replace("\t", "").split(", ")) {
if (cources.containsKey(name))
cources.replace(name, cources.get(name)+1);
else
cources.put(name, 1);
}
}
//some output for testing
cources.forEach((a, b) -> System.out.println(a + " - " + b));https://stackoverflow.com/questions/43565863
复制相似问题