JDK1.8 List使用心得记录

最近项目里用的都是jdk1.8,所以一些新功能也就拉出来用用了.
首先,我觉得最好用的也就是list得filter方法
看一段代码

//以前的查找方法
List<String> list = new ArrayList()<>;
//添加数据
for(int i = 0 ; i < 10000; i ++){
    list.add("数据"+i);
}

List<String> findList = new ArrayList()<>;
//查找
for(String s : list){
    if(s.startsWith("数据30")){
        findList.add(s);
    }
}

使用jdk1.8之后

//以前的查找方法
List<String> list = new ArrayList()<>;
//添加数据
for(int i = 0 ; i < 10000; i ++){
    list.add("数据"+i);
}
//一句话搞定
List<String> findList = list.stream().filter(s-> s.startsWith("数据30"))
                .collect(Collectors.toList());

还有合并重复数据排序等功能


List<String> list = new ArrayList()<>;
//添加数据
int j = 0;
for(int i = 0 ; i < 10000; i ++){
    list.add("数据"+j);
    if(i%100 ==0){
        j+=100;
    }
}
//一句话搞定
List<String> findList = list.stream().distinct()
                .collect(Collectors.toList());
//输出结果已经合并了重复值

整个集合转换大写字母

List<String> output = list.stream().
map(String::toUpperCase).
collect(Collectors.toList());

等等 ..大家值得一看

你可能感兴趣的:(java)