java8 stream List倒序遍历
时间: 2024-03-26 07:13:59 浏览: 295
要使用Java 8 Stream对List进行倒序遍历,可以使用`Collections.reverseOrder()`方法和`Stream.sorted()`方法来实现。下面是一个示例代码:
```java
List<String> list = Arrays.asList("apple", "banana", "orange", "pear");
list.stream()
.sorted(Collections.reverseOrder())
.forEach(System.out::println);
```
输出结果:
```
pear
orange
banana
apple
```
首先,我们将List转换为一个Stream对象。然后,我们使用`Collections.reverseOrder()`方法创建一个比较器,将元素进行倒序排列。最后,我们使用`forEach()`方法将每个元素打印出来。
相关问题
java 集合倒序遍历
Java中集合倒序遍历可以使用Collections类中的reverseOrder()方法和Collections.reverse()方法来实现。
以下是使用ArrayList作为示例集合的代码:
```java
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
public class ReverseTraversalExample {
public static void main(String[] args) {
List<String> list = new ArrayList<>();
list.add("one");
list.add("two");
list.add("three");
list.add("four");
// 使用Collections.reverseOrder()方法,从大到小遍历
System.out.println("倒序遍历1:");
list.stream().sorted(Collections.reverseOrder()).forEach(System.out::println);
// 使用Collections.reverse()方法,从后向前遍历
System.out.println("倒序遍历2:");
Collections.reverse(list);
for (String str : list) {
System.out.println(str);
}
}
}
```
输出结果:
```
倒序遍历1:
two
three
one
four
倒序遍历2:
four
three
two
one
```
其中,使用Collections.reverseOrder()方法时,需要将集合转化为流,然后使用sorted方法对其进行排序,最后使用forEach方法遍历输出。
而使用Collections.reverse()方法则是直接对集合进行反转,然后使用for-each循环遍历输出。
stream流倒序排序_Java8新特性——强大的Stream
Java 8 中的 Stream API 提供了很多方便的方法来处理集合数据,其中一个非常有用的功能就是对集合元素进行排序。要对 Stream 流进行倒序排序,可以使用 `sorted()` 方法,该方法接受一个 Comparator 参数,用于指定排序规则。
以下是一个示例代码,演示了如何使用 Java 8 中的 Stream 流对集合进行倒序排序:
```java
import java.util.Arrays;
import java.util.Comparator;
import java.util.List;
public class StreamTest {
public static void main(String[] args) {
List<String> list = Arrays.asList("apple", "banana", "orange", "pear");
list.stream()
.sorted(Comparator.reverseOrder())
.forEach(System.out::println);
}
}
```
在上面的代码中,我们首先定义了一个字符串列表 `list`,然后将其转换为一个 Stream 流,并使用 `sorted()` 方法对其进行排序。在 `sorted()` 方法中,我们传入了一个 `Comparator.reverseOrder()` 对象,该对象会根据字符串的自然顺序(从小到大)进行排序,并返回一个反向排序的 Comparator 对象。最后,使用 `forEach()` 方法对排好序的 Stream 流进行遍历输出。
执行以上代码,输出结果如下:
```
pear
orange
banana
apple
```
可以看到,输出结果是按照字符串的自然顺序的反向顺序输出的。这就是使用 Java 8 中的 Stream 流对集合进行倒序排序的方法。
阅读全文