你可以使用collect方法来一次循环获取对象中的最大值和最小值的属性值。

例如,假设你有一个Person类,其中有一个属性age表示年龄。你想要一次循环获取一组Person对象中的最大年龄和最小年龄。

你可以使用IntSummaryStatistics类来收集年龄属性的统计信息,然后从中获取最大值和最小值。下面是一个示例代码:

List<Person> people = // your list of Person objects

IntSummaryStatistics ageStats = people.stream()
    .collect(Collectors.summarizingInt(Person::getAge));

int maxAge = ageStats.getMax();
int minAge = ageStats.getMin();

System.out.println("Max Age: " + maxAge);
System.out.println("Min Age: " + minAge);

在上面的代码中,我们使用stream方法将people列表转换为流。然后,我们使用collect方法和Collectors.summarizingInt收集器来收集年龄属性的统计信息。最后,我们可以使用getMaxgetMin方法从IntSummaryStatistics对象中获取最大值和最小值。

注意:在上面的代码中,假设Person类有一个名为getAge的方法来获取年龄属性的值。你需要根据你的实际情况来替换这部分代码

java stream一次循环获取对象中同时获取最大值和最小值的属性

原文地址: http://www.cveoy.top/t/topic/hzvl 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录