我有一个场景,我必须通过HashMap循环来检查空值并生成一个空的bean。空bean将再次添加到新地图。通过使用字符串和列表作为参数的散列图迭代
for (String course_date : shiftSet) {
Bean courseBean = null;
boolean valueExists = false;
for (Entry<String, List<Bean>> entry: courseMap.entrySet()){
String studentDetail = entry.getKey();
String [] studentSet = StringUtils.getArray(studentDetail , ",");
String studentId = studentSet[0];
String courseId = studentSet[1];
for(Bean resultBean : entry.getValue()){
if(course_date.equalsIgnoreCase(resultBean.getCourseDate()){
valueExists = true;
}
}
if(!valueExists) {
courseBean = new Bean();
courseBean.setStudent(studentId);
courseBean.setCourse(courseId);
List<Bean> courseList = entry.getValue();
courseList.add(courseBean);
outputMap.put(studentId+courseId, courseList);
}
}
}
即使不满足内部环路条件,布尔值也始终为真。
任何人都可以提出一个更好的解决方案来实现所需的输出?
在此先感谢
初始化'FALSE'值的变量在第一'for'环... –
不相关的问题,但_please_不写'String value = entry.getKey();'。一个条目有一个键和一个值。我们不要将他们的名字换掉。 –
@ Luiggi你能帮我解释一下如何确定我的病例的循环索引。感谢您的意见。 – jaggs