假设我有一个对象列表 - 学生。每个学生对象都有各种属性 - 卷号,类名(不要与Java类名混淆,这是学生的班级名称),学生姓名等。
要求是检索具有类名称为“堆栈溢出”的学生对象。我们可以创建一个带有classname(String)的hashmap,它是各自的student对象。在java中有没有使用hashmap的其他解决方案?我遇到过各种各样的要求,通常我会创建一个hashmap并继续前进。我只是好奇是否有更好的方法来解决这些问题。
答案 0 :(得分:1)
使用java 8 stream api
Student result1 = list.stream() // Convert to steam
.filter(x -> "rahul".equals(x.getName())) // we want "rahul" only
.findAny() // If 'findAny' then return found
.orElse(null);
收集清单
List<Student> result1 = list.stream() // Convert to steam
.filter(x -> "rahul".startsWith(x.getName()))
.collect(Collectors.toList());