`
weitao1026
  • 浏览: 992045 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Java8 利用Lambda处理List集合

 
阅读更多

Java 8新增的Lambda表达式,我们可以很方便地并行操作大集合,
刚刚接触java8,Lambda还是挺好用的,目前接触的也不多,给大家举几个例子(后续有关于Lambda的补充也会继续更新此篇博客)
废话不多说,咱们直接进入例子

1、利用stream().forEach()循环处理List;

 

[java] view plain copy
 
print?
  1. List<String> list = Lists.newArrayList();//新建一个List 用的google提供的Guava  package com.google.common.collect;  
  2.         list.add("1");  
  3.         list.add("2");  
  4.         list.add("3");  
  5.   
  6.         list.stream().forEach(string ->{  
  7.             System.out.println(string);  
  8.         });  
  9. 运行结果:  
  10. 1  
  11. 2  
  12. 3  
List<String> list = Lists.newArrayList();//新建一个List 用的google提供的Guava  package com.google.common.collect;
        list.add("1");
        list.add("2");
        list.add("3");

        list.stream().forEach(string ->{
            System.out.println(string);
        });
运行结果:
1
2
3


2、利用stream().map()处理List,并给另外一个List赋值:

 

 

[java] view plain copy
 
print?
  1. List<String> list1 = Lists.newArrayList();  
  2.         List<String> list2 = Lists.newArrayList();  
  3.         list1.add("1");  
  4.         list1.add("2");  
  5.         list1.add("3");  
  6.   
  7.         list2 = list1.stream().map(string -> {  
  8.             return "stream().map()处理之后:" + string;  
  9.         }).collect(Collectors.toList());  
  10.           
  11.         list2.stream().forEach(string -> {  
  12.             System.out.println(string);  
  13.         });  
  14. 运行结果:  
  15. stream().map()处理之后:1  
  16. stream().map()处理之后:2  
  17. stream().map()处理之后:3  
List<String> list1 = Lists.newArrayList();
        List<String> list2 = Lists.newArrayList();
        list1.add("1");
        list1.add("2");
        list1.add("3");

        list2 = list1.stream().map(string -> {
            return "stream().map()处理之后:" + string;
        }).collect(Collectors.toList());
        
        list2.stream().forEach(string -> {
            System.out.println(string);
        });
运行结果:
stream().map()处理之后:1
stream().map()处理之后:2
stream().map()处理之后:3

 

 

3、利用stream().filter()处理List,对该List进行过滤处理:

 

[java] view plain copy
 
print?
  1. List<String> list1 = Lists.newArrayList();  
  2.         List<String> list2 = Lists.newArrayList();  
  3.         list1.add("1");  
  4.         list1.add("1");  
  5.         list1.add("2");  
  6.         list1.add("3");  
  7.   
  8.         list2 = list1.stream().filter(s -> s != "1").collect(Collectors.toList());  
  9.         System.out.println(list2.toString());  
  10. 运行结果:  
  11. [23]  
分享到:
评论

相关推荐

    java8如何通过Lambda处理List集合

    主要介绍了java8如何通过Lambda处理List集合,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

    Java8 用Lambda表达式给List集合排序的实现

    主要介绍了Java8 用Lambda表达式给List集合排序的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

    java使用lambda表达式对List集合进行操作技巧(JDK1.8)

    主要介绍了java使用lambda表达式对List集合进行操作技巧适用jdk1.8,感兴趣的朋友跟着小编一起看看实现代码吧

    Java中List集合对象去重及按属性去重的8种方法

    主要介绍了Java中List集合对象去重及按属性去重的8种方法,本文给大家介绍的非常详细,对大家的学习或工作具有一地的参考借鉴价值,需要的朋友可以参考下

    Lambda表达式.pdf

    Lambda表达式之集合操作,代码里主要针对java 集合list的操作

    java8-lambda-utils

    有用的东西 加入 合并类似于sql joins的集合 SortedListJoiner ... public static &lt; T&gt; List&lt; R&gt; fullOuterJoin( List&lt; T&gt; left, List&lt; U&gt; right, BiFunction&lt; T&gt; comparator, BiFunction&lt; T&gt; combiner)

    JAVA JDK8 List分组获取第一个元素的方法

    今天小编就为大家分享一篇关于JAVA JDK8 List分组获取第一个元素的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

    java8stream对list操作常用总结

    Java 8 中的 Stream 是对集合(Collection)对象功能的增强,它专注于对集合对象进行各种非常便利、高效的聚合操作(aggregate operation),或者大批量数据操作 (bulk data operation)。 Stream API 借助于同样新...

    java8集合源码-Java-Android-Framework-List:所有java框架列表

    java8集合源码Java-Android-Framework-List 所有java框架列表 很棒的 Java [![很棒] Java 框架、库和软件。 内容 项目 豆映射 简化 bean 映射的框架。 - 为类型安全域模型验证和映射提供流畅的 API。 它使用注释、...

    java8集合源码分析-java8-demo:java8-演示

    java8 集合源码分析 Java8特性Demo 代码来源: 主要会介绍如何使用默认接口方法,lambda表达式,方法引用和可复用的annotation。 包括流、功能接口、扩展的map以及新的Date API等。 接口的默认方法 Java8允许开发者...

    Java基础最全笔记文档

    5. Collection集合、数据结构、List集合、泛型、Set集合、可变参数 6. 集合工具类Collections、Map集合、集合嵌套、不可变集合 7. Stream流、异常处理 8. Logback日志框架、阶段项目 9. File、方法递归、字符集、IO...

    java编程宝典

    3.1 如何遍历一个List/Set(foreach、Iterator、Lambda表达式) 11 3.2 如何遍历一个Map(foreach、Iterator、Lambda表达式) 11 3.3 如何实现一个Set&lt;Student&gt; set = new TreeSet(); 12 3.4 如何实现一个Map&lt;...

    Java+Java基础知识+基本概念+运算符+判断和循环+循环高级和数组+方法+综合练习+面向对象+面向对象综合熏硫胺+字符串等

    Java基础知识,其中包括基本概念+运算符+判断和循环+循环高级和数组+方法+综合练习+面向对象+面向对象综合训练+字符串+集合&学生管理系统+学生管理系统升级版+面向对象进阶(static&继承+多态+包&final&权限+抽象类&...

    java8集合源码-playJava8:玩Java8

    java8集合源码玩Java8 Lambda 表达式 List&lt; String &gt; names = Arrays . asList( " peter " , " anna " , " mike " , " xenia " ); Collections . sort(names, ( String a, String b) - &gt; { return b . compareTo...

    Java基础知识点.html

    哈希值 LinkedHashSet TreeSet 自然排序Comparable 比较器排序Comparator Set集合 并发修改异常 LinkedList集合 ArrayList集合 List集合 Collection集合概述 冒泡排序 Object 异常 Math 包装类 Calendar类 ...

    在java 8 stream表达式中实现if/else逻辑

    文章目录简介传统写法使用filter总结 简介 在Stream处理中,我们通常会遇到if/else的判断情况,对于这样的问题我们怎么处理呢? 还记得我们在上一篇文章... List ints = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);

    使用Lambda表达式查找指定字符

    使用Lambda表达式查找指定字符,(input parameters)=&gt;expression

    linq:LINQ to Java的对象

    您可以使用LINQ查询任何可枚举的集合,例如Primitive Array , Object Array , List , Collection或Iterable等。 该集合可以是用户定义的,也可以由JDK API返回。 从基本意义上讲,LINQ to Objects代表了一种新...

    max:帮助不善于使用lambda的开发者,进行高效的集合处理的工具类

    帮助不善于使用lambda的开发者,进行高效的集合处理的工具类。那么为什么叫max? 因为最近越发的喜欢《破产姐妹》里面的max了。coordinateSNAPSHOT:compile '...

    黑马程序员-Java语言进阶-源码、教程笔记.zip

    day03_List、Set、数据结构、Collections day04_Map,斗地主案例 day05_异常,线程 day06_线程、同步 day07_等待与唤醒案例、线程池、Lambda表达式 day08_File类、递归 day09_字节流、字符流 day10_缓冲流、转换流、...

Global site tag (gtag.js) - Google Analytics