java对List去重并排序,如何快速地去掉两个

如题所述

Java8开始,对数值,集合等提供了Stream流操作,可以方便的对集合进行操作.

比如 筛选,过滤,去重, 映射, 排序,规约,收集 等操作

简单的参考代码如下


import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
// 使用Java8 的Stream特性 和 Java8的Lambda 语句
public class Demo {
public static void main(String[] args) {
// 需求: 集合去重,排序,得到一个新集合里面的元素是之前元素的平方
List<Integer> list=Arrays.asList(5,2,2,1,3,4);
List<Integer> listResult = list
.stream() // 得到流
.distinct() // 去重 5,2,1,3,4
.sorted() // 自然排序 , 也可以自定义排序规则1,2,3,4,5
.map(x->x*x) // 每个元素求平方1,4,9,16,25
.collect(Collectors.toList()); //收集并返回

System.out.println(listResult);//1,4,9,16,25
}
}

温馨提示:内容为网友见解,仅供参考
无其他回答
相似回答