Arrays.stream求最大值
时间: 2023-03-25 21:02:20 浏览: 88
可以使用Arrays.stream方法来求最大值,具体实现可以参考以下代码:
int[] arr = {1, 2, 3, 4, 5};
int max = Arrays.stream(arr).max().getAsInt();
System.out.println("最大值为:" + max);
相关问题
Arrays.stream对数组前i取最大值
可以使用Java 8中的Arrays.stream方法和IntStream.rangeClosed方法来实现对数组前i个元素取最大值的操作。代码示例如下:
```java
int[] arr = {10, 5, 8, 3, 6};
int i = 3; // 取前3个元素
int max = Arrays.stream(Arrays.copyOfRange(arr, 0, i))
.max()
.orElse(0); // 如果数组为空,返回0
System.out.println("前" + i + "个元素的最大值为:" + max);
```
解释一下代码:
- 首先,使用Arrays.copyOfRange方法截取数组的前i个元素,并将截取后的数组转换为IntStream类型。
- 然后,使用IntStream.max方法获取该流中的最大值。
- 最后,使用Optional.orElse方法指定如果数组为空时的默认返回值。
运行代码,输出结果为:
```
前3个元素的最大值为:10
```
这里假设数组中至少有i个元素。如果数组中不足i个元素,将会返回截取后的所有元素的最大值。
Arrays.stream(jobDifficulty).max()返回int
是的,Arrays.stream(jobDifficulty).max()返回一个int类型的值,它代表了jobDifficulty数组中的最大值。你可以用以下方式获取它的值:
```
int maxDifficulty = Arrays.stream(jobDifficulty).max().getAsInt();
```
在这里,我们使用getAsInt()方法来获取int类型的最大值(因为max()方法返回的是一个OptionalInt类型的值)。
阅读全文