Java stream() 获取List指定元素或最后一个元素的方法
在Java中,可以使用Stream API来获取List中指定索引位置的元素或者最后一个元素。以下是两种情况的示例代码:
- 获取指定索引位置的元素:
import java.util.List;
import java.util.Optional;
public class Main {
public static void main(String[] args) {
List<String> list = List.of("a", "b", "c", "d");
int index = 2; // 指定索引位置
Optional<String> element = list.stream().skip(index).findFirst();
element.ifPresent(System.out::println); // 输出 c
}
}
- 获取最后一个元素:
import java.util.List;
import java.util.Optional;
public class Main {
public static void main(String[] args) {
List<String> list = List.of("a", "b", "c", "d");
Optional<String> lastElement = list.stream().reduce((first, second) -> second);
lastElement.ifPresent(System.out::println); // 输出 d
}
}
在第一个例子中,skip(index)
方法用于跳过指定数量的元素,然后 findFirst()
返回第一个元素(即索引位置之后的第一个元素)。
在第二个例子中,reduce()
方法用于将流中的元素归约为一个值,传递给reduction函数的参数是流中的连续两个元素,该函数返回的值会在下一次迭代中作为第一个参数,直到流中的最后一个元素,在这个例子中我们返回最后一个元素作为结果。
评论已关闭