【发布时间】:2018-10-10 03:11:24
【问题描述】:
伪代码,
Map <String, HashMap<String,List<Submission>>> assignmentMap = new HashMap();
Map <String, List<Submission>> submissionMap = new HashMap();
List <Submission> ls = new ArrayList();
ls.add(new Submission("student1"));
ls.add(new Submission("student2"));
submissionMap.put("studentSubmissions", ls);
assignmentMap.put("assignmentid1", submissionMap);
最后我想获取所有 studentSubmissions 的计数(也可以有其他类型,如 instrutorSubmission 等)属于作业 1。在这种情况下 2。我如何使用 Java 8 Streams 编写代码来实现它?
【问题讨论】:
-
在你甚至 contemplate 使用流之前,停止使用 raw 泛型,例如第一行应该是
Map<String, Map<String, List<String>>> assignmentMap = new HashMap<>();--- 第二行根本没有任何类型参数,所以不能很好地与流一起使用!! -
什么是
map2? -
更正了代码
-
列表
ls的类型为String。但是,new Submission("student1")将返回Submission类型的对象。请适当地编辑问题。 -
@Harshana,如果您在回复评论时编辑您的问题,请回复,以便用户收到编辑通知。
标签: java lambda collections java-8 java-stream