Java 8에서 매개 변수로 목록을 사용하고 결과적으로 HashMap
을 리턴하는 함수를 작성하려고합니다. 나는 collect(Collectors.toMap)
스트림하지만 함께 노력List <V>리스트를 취하여 HashMap을 반환하는 Java 8 함수 >
public static HashMap<String, List<Eleve>> getMentions(List<Eleve> liste){
HashMap<String, List<Eleve>> listeMentions = new HashMap<String, List<Eleve>>();
List<Eleve> noMention = new ArrayList<Eleve>();
List<Eleve> mentionAB = new ArrayList<Eleve>();
List<Eleve> mentionB = new ArrayList<Eleve>();
List<Eleve> mentionTB = new ArrayList<Eleve>();
for (Eleve eleve: liste) {
if (eleve.getAverage()>=12 && eleve.getAverage()<14) {mentionAB.add(eleve);}
else if(eleve.getAverage()>=14 && eleve.getAverage()<16) {mentionB.add(eleve);}
else if (eleve.getAverage()>=16) {mentionTB.add(eleve);}
else{noMention.add(eleve);}
}
listeMentions.put("No mention", noMention);
listeMentions.put("Mention AB", mentionAB);
listeMentions.put("Mention B", mentionB);
listeMentions.put("Mention TB", mentionTB);
return listeMentions;
}
:
이미 자바 7에 그것을했다하지만 난 자바 8 스트림을 사용하여 작업을 수행 할 : 자바 7의 코드는 여기에
입니다 예상 결과를 얻지 못했습니다.
또한 두 번째 조각을 단축 할 수있다 : 전자'에서 - SomeClass'에> getGroup (e)에':: getGroup' – Lino
@Lino 네 , 어떤 수업이 그 방법을 포함할지 결정하지 않았기 때문에 나는 그것을하지 않았다 :) – Eran
그래서 나는 dummyname을 생각해 냈다. 가능한 일이라고 언급하고 싶었습니다. 하지만 물론 가능하지는 않습니다.) – Lino