java List<Long> Stream 倒叙
时间: 2023-07-09 11:19:50 浏览: 60
可以通过使用`Stream`的`sorted`和`Collections`的`reverse`方法来实现`List<Long>`的倒序排列。具体代码如下:
```
List<Long> longList = Arrays.asList(1L, 2L, 3L, 4L, 5L);
List<Long> reversedList = longList.stream()
.sorted(Comparator.reverseOrder())
.collect(Collectors.toList());
Collections.reverse(reversedList);
System.out.println(reversedList); // 输出 [5, 4, 3, 2, 1]
```
首先使用`stream`方法将`List<Long>`转换为`Stream<Long>`,然后使用`sorted`方法将元素按照倒序排列。接着使用`collect`方法将`Stream<Long>`转换为`List<Long>`。最后使用`Collections`的`reverse`方法将`List<Long>`倒序排列。
相关问题
java如何把List<String>转为List<Long>
可以使用Java 8的Stream API来将List<String>转换为List<Long>。以下是示例代码:
```java
List<String> stringList = Arrays.asList("1", "2", "3", "4", "5");
List<Long> longList = stringList.stream()
.map(Long::valueOf)
.collect(Collectors.toList());
```
首先,我们将需要转换的List<String>初始化为一个字符串列表。然后,我们使用Stream API的map()方法将字符串列表中的每个元素转换为Long类型的数字。最后,我们使用collect()方法将结果收集到新的List<Long>中。
请注意,在使用map()方法时,我们使用了Java 8中的方法引用(Long::valueOf),这相当于将每个元素传递给valueOf()方法进行转换。
List<String> 转 List<Long>
可以使用Java 8的Stream API将List<String>转换为List<Long>。具体实现如下所示:
```java
List<String> stringList = Arrays.asList("1", "2", "3", "4", "5");
List<Long> longList = stringList.stream()
.map(Long::valueOf)
.collect(Collectors.toList());
System.out.println(longList);
```
输出结果为:[1, 2, 3, 4, 5]
解释如下:
1. 首先,我们创建一个包含字符串的List。
2. 然后,我们使用stream()方法将List转换为Stream。
3. 接着,我们使用map()方法将每个字符串转换为Long类型。
4. 最后,我们使用collect()方法将Stream转换为List<Long>类型。