java list取出某一列属性并去重
时间: 2023-07-07 13:14:03 浏览: 92
如果你想要获取List中某一列属性并去重,可以使用Java 8的Stream API和Lambda表达式来实现。
假设你有一个对象Person,其中包含属性name、age、gender等,你想要获取List<Person>中所有Person对象的name属性并去重,可以使用以下代码:
```
List<Person> personList = ...; // 初始化personList
List<String> distinctNames = personList.stream()
.map(Person::getName)
.distinct()
.collect(Collectors.toList());
```
其中,map(Person::getName)表示将Person对象转换为name属性,distinct()表示去重,最终通过collect(Collectors.toList())将所有去重后的name属性值保存到List<String>中。
如果你只想获取List中第一个Person对象的name属性值并去重,可以使用以下代码:
```
List<Person> personList = ...; // 初始化personList
String firstName = personList.get(0).getName();
List<String> distinctNames = Arrays.asList(firstName).stream()
.distinct()
.collect(Collectors.toList());
```
其中,Arrays.asList(firstName)将firstName转换为List对象,stream()将List转换为Stream对象,distinct()表示去重,最终通过collect(Collectors.toList())将所有去重后的name属性值保存到List<String>中。
阅读全文