stream流求最大值
时间: 2023-08-23 07:17:57 浏览: 119
要使用Stream流求最大值,可以使用reduce()方法或者max()方法。在Java中,可以根据不同的数据类型选择不同的方法。
对于BigDecimal类型,可以使用stream().reduce()方法来求最大值。例如,假设有一个包含BigDecimal类型的列表eqpUPHList,可以使用以下代码来求最大值:
BigDecimal maxUPH = eqpUPHList.stream()
.map(EqpUPHVO::getUphData)
.reduce(BigDecimal::max)
.orElse(BigDecimal.ZERO);
对于Integer类型,可以使用stream().max()方法来求最大值。例如,假设有一个包含Integer类型的列表list,可以使用以下代码来求最大值:
int max = list.stream()
.max(Integer::compareTo)
.orElse(0);
同样地,对于Long类型和Double类型,也可以使用相应的方法来求最大值。例如,对于Long类型的列表list,可以使用以下代码来求最大值:
long max = list.stream()
.max(Long::compareTo)
.orElse(0L);
对于Double类型的列表list,可以使用以下代码来求最大值:
double max = list.stream()
.max(Double::compareTo)
.orElse(0.0);
以上是使用Stream流求最大值的方法示例。具体的实现可以根据实际情况进行调整和修改。\[1\]\[2\]\[3\]
#### 引用[.reference_title]
- *1* [java中各种类型用Stream流求最大值最小值](https://blog.csdn.net/weixin_43296313/article/details/122596555)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *2* [JAVA stream流之reduce求最大值、最小值](https://blog.csdn.net/qq_41844287/article/details/126365266)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [使用stream流进行集合排序取最大值,根据集合中的bigdemal属性排序(正序反序)并取最大值](https://blog.csdn.net/qq_39143103/article/details/118599089)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文