作者:福田商务汽车--南宁鑫来 | 来源:互联网 | 2022-11-25 16:22
我创建了一个具有各种属性的student对象的arrayList.这些属性中最喜欢的颜色.所以在这个n学生的arraylist中,每个学生都有一个字符串favoriteColor成员变量.
Set studentUnique = new HashSet(studentList);
for (user key : studentUnique) {
System.out.println(key + ": " + Collections.frequency(studentList, key));
}
我想计算所说颜色的频率,例如有一百名学生,可能输出:
red: 50
blue: 20
green: 30
我将学生的arrayList(studentList)放入一个hashmap,但我不知道如何编写我的频率语句来获得喜欢各自颜色的学生的频率.
1> Eugene..:
studentUnique.stream()
.collect(Collectors.groupingBy(
Student::getColor,
Collectors.counting()))
假设getColor
存在.