如何打印数组列表中的字符串?
发布于 2018-08-04 06:12:48
为了找到最矮的人,这样你就可以使用这个人的其他信息,你需要记住这个人,而不仅仅是这个人的身高,就像这样:
person shortest = null;
for (person p : People) {
if (shortest == null || p.getHeight() < shortest.getHeight()) {
shortest = p;
}
}
String s = shortest.toString();
当然,您可能需要检查People
是否为空,否则在尝试调用toString()
时会得到一个NullPointerException
。
发布于 2018-08-04 06:06:41
您可以使用java 8来实现此目的:
Optional <Person> shortestPersonOpt = people.stream().min(Comparator.comparingDouble(Person::getHeight));
结果是可选的,因为你可能并不总是拥有最矮的人。要实际获取和使用您应该做的人员:
if(shortestPersonOpt.isPresent()){
Person shortestPerson = shortestPersonOpt.get();
//now you can use it
}
发布于 2018-08-04 06:08:29
跟踪这个人,而不是身高的值。
Person smallest = null;
for (Person person : People) {
if (smallest == null || person.getHeight() < smallest.getHeight()) {
smallest = person;
}
}
//如果列表中没有人员或者值最小的人员,则smallest现在为null。
https://stackoverflow.com/questions/51680569
复制相似问题