How to get minimum and maximum value from List of Objects using Java 8(如何使用 Java 8 从对象列表中获取最小值和最大值)
问题描述
我有这样的课:
public class Test {
private String Fname;
private String Lname;
private String Age;
// getters, setters, constructor, toString, equals, hashCode, and so on
}
和一个类似 List<Test> 的列表testList
填充了 Test
元素.
and a list like List<Test> testList
filled with Test
elements.
如何使用 Java 8 获取 age
的最小值和最大值?
How can I get minimum and maximum value of age
using Java 8?
推荐答案
为了简化事情,您可能应该将您的年龄设为 Integer
或 int
而不是 Sting,但由于您的问题是关于 String age
这个答案将基于 String
类型.
To simplify things you should probably make your age Integer
or int
instead of Sting, but since your question is about String age
this answer will be based on String
type.
假设 String age
持有表示整数范围内值的字符串,您可以简单地将其映射到 IntStream
并使用它的 IntSummaryStatistics
之类的
Assuming that String age
holds String representing value in integer range you could simply map it to IntStream
and use its IntSummaryStatistics
like
IntSummaryStatistics summaryStatistics = testList.stream()
.map(Test::getAge)
.mapToInt(Integer::parseInt)
.summaryStatistics();
int max = summaryStatistics.getMax();
int min = summaryStatistics.getMin();
这篇关于如何使用 Java 8 从对象列表中获取最小值和最大值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何使用 Java 8 从对象列表中获取最小值和最大值
基础教程推荐
- 设置 bean 时出现 Nullpointerexception 2022-01-01
- Java:带有char数组的println给出乱码 2022-01-01
- 如何使用 Java 创建 X509 证书? 2022-01-01
- 在 Libgdx 中处理屏幕的正确方法 2022-01-01
- 降序排序:Java Map 2022-01-01
- “未找到匹配项"使用 matcher 的 group 方法时 2022-01-01
- Java Keytool 导入证书后出错,"keytool error: java.io.FileNotFoundException &拒绝访问" 2022-01-01
- 无法使用修饰符“public final"访问 java.util.Ha 2022-01-01
- FirebaseListAdapter 不推送聊天应用程序的单个项目 - Firebase-Ui 3.1 2022-01-01
- 减少 JVM 暂停时间 >1 秒使用 UseConcMarkSweepGC 2022-01-01