stream 对list截取第一字符并去重
时间: 2024-10-09 10:13:03 浏览: 35
Java中对List集合的常用操作详解
5星 · 资源好评率100%
在Java中,你可以使用Stream API来处理List并对其中的字符串进行操作,例如截取每个字符串的第一个字符并去除重复。以下是步骤:
1. 首先,假设你有一个`List<String>`,比如`List<String> list = Arrays.asList("abc", "def", "ghi", "abc", "jkl");`
2. 使用`stream()`方法将列表转换为流(Stream):
```java
Stream<String> stringStream = list.stream();
```
3. 然后对每个字符串应用`map()`函数,取出第一个字符。由于我们只关心第一个字符,可以使用substring(0, 1):
```java
Stream<Character> charStream = stringStream.map(String::charAt);
```
4. 接下来,使用`distinct()`方法来去除重复的字符:
```java
Stream<Character> distinctCharStream = charStream.distinct();
```
5. 最后,如果你需要得到结果是一个集合,如`Set<Character>`,而不是一个流,可以使用`collect(Collectors.toSet())`:
```java
Set<Character> uniqueChars = distinctCharStream.collect(Collectors.toSet());
```
现在`uniqueChars`集合就包含了原列表中所有字符串的第一个、无重复的字符。
阅读全文