List<Integer> songListIds = listSongs.stream().map(e -> e.getSongListId()).collect(Collectors.toList());如何对songListId去重
时间: 2024-01-21 10:18:20 浏览: 24
你可以使用Java 8的Stream API中提供的distinct()方法对songListIds进行去重操作,具体代码如下:
```
List<Integer> distinctSongListIds = songListIds.stream().distinct().collect(Collectors.toList());
```
这样就可以得到一个去重后的List<Integer>了。
相关问题
List<Integer> idList = rankSet.stream() .map(item -> Integer.valueOf(item.getValue().toString())).collect(Collectors.toList());换一种写法
你可以使用方法引用来简化代码。下面是使用方法引用的写法:
```java
List<Integer> idList = rankSet.stream()
.map(item -> Integer.parseInt(item.getValue().toString()))
.collect(Collectors.toList());
```
在这种写法中,我们使用`Integer.parseInt()`方法来将字符串转换为整数。这里通过方法引用的方式直接引用了`Integer`类的`parseInt()`方法,省略了lambda表达式的写法。其余部分与之前的代码相同。
List<Integer> idList = rankSet.stream() .map(item -> Integer.valueOf(item.getValue().toString())).collect(Collectors.toList());取消使用lambda表达式
你可以使用方法引用来取消使用lambda表达式。下面是取消使用lambda表达式的写法:
```java
List<Integer> idList = rankSet.stream()
.map(item -> Integer.valueOf(item.getValue().toString()))
.collect(Collectors.toList());
```
取消使用lambda表达式后的代码与之前的代码是相同的。方法引用的写法更加简洁,直接引用了`Integer`类的`valueOf()`方法。其余部分保持不变。