Java集合Stream类
----按条件对集合进行过滤filter

public class Test {public static void main(String[] args) {List<String>all=new ArrayList<>();all.add("ghjt");all.add("ghjiiii");Stream<String>stream=all.stream();List<String> newAll=stream.filter(new Predicate<String>() {@Overridepublic boolean test(String s) {return s.contains("t") ;}}).collect(Collectors.toList());newAll.forEach(System.out::println);}

lambda表达式简化写法
接收一个参数s,返回其结果s.contains(“t”)

stream.filter((s)->s.contains("t"));

最后简化写法:

public class Test {public static void main(String[] args) {List<String>all=new ArrayList<>();all.add("ghjt");all.add("ghjiiii");Stream<String>stream=all.stream();List<String> newAll=stream.filter((s)->s.contains("t")).collect(Collectors.toList());newAll.forEach(System.out::println);}}

------在过滤之前对数据流进行处理,使用map()

        List<String> newAll=stream.distinct().map((x)->x.toUpperCase()).filter((s)->s.contains("T")).collect(Collectors.toList());

------对数据流进行分页操作,使用
skip(1)跳过第一条数据
limit(1)只取第一条数据

        List<String> newAll=stream.distinct().map((x)->x.toUpperCase()).filter((s)->s.contains("T")).skip(1).limit(1).collect(Collectors.toList());

------使用anyMatch或allMatch实现数据匹配操作

public class TestOthers {public static void main(String[] args) {List<String> all=new ArrayList<>();all.add("ghjt");all.add("ghjiiii");all.add("AAAghjt");all.add("SDFGghjiiii");Stream<String> stream=all.stream();if (stream.anyMatch((x)->x.contains("j"))){System.out.println("jjj is exits");}}}

------使用or()或and()实现多个数据匹配
Predicate接口----判断输入的对象是否符合某个条件。(断言式接口)

public class TestOthers {public static void main(String[] args) {List<String> all=new ArrayList<>();all.add("ghjt");all.add("ghjiiii");all.add("AAAghjt");all.add("SDFGghjiiii");Stream<String> stream=all.stream();Predicate<String>p1=(x)->x.contains("iii");Predicate<String>p2=(x)->x.contains("A");if (stream.anyMatch(p1.and(p2))){System.out.println("It's great");}else {System.out.println("bad");}}
}

Java集合Stream类相关推荐

  1. java集合框架类_Java集合框架总结—超详细-适合面试

    Set和List接口是Collection接口派生的两个子接口,Queue是Java提供的队列实现,类似于List. Map实现类用于保存具有映射关系的数据(key-value). 2.Set.Lis ...

  2. Java集合工具类Collections(一)

    Collections Java提供了一个操作Set.List和Map等集合的工具类:Collections,该工具类里提供了大量方法对集合元素进行排序.查询和修改等操作,还提供将集合对象设置为不可变 ...

  3. java集合UML类图 总览

    Java集合框架主要包括两种类型的容器, 一种是集合(Collection),存储一个元素集合, Collection 接口又有 3 种子类型,List.Set 和 Queue. 另一种是图(Map) ...

  4. Java集合工具类的一些坑,Arrays.asList()、Collection.toArray()...

    Arrays.asList() 使用指南 最近使用Arrays.asList()遇到了一些坑,然后在网上看到这篇文章:Java Array to List Examples 感觉挺不错的,但是还不是特 ...

  5. Java集合工具类:Collections

    Java提供了一个操作Set.List和Map等集合的工具类:Collections,该工具类里 提供了大量方法对集合元素进行排序.查询和修改等操作,还提供了对集合对象实现同步控制等方法. 一. 排序 ...

  6. java集合框架类源代码阅读体会

    忘了什么原因突然想看下JCF,于是就有了这个阅读体会.  java版本基于sun jdk1.6.0_18 1 通用接口 public interface Iterable<T>  publ ...

  7. Java集合---Arrays类源码解析

    一.Arrays.sort()数组排序 Java Arrays中提供了对所有类型的排序.其中主要分为Primitive(8种基本类型)和Object两大类. 基本类型:采用调优的快速排序: 对象类型: ...

  8. java 集合工具类_Java集合中Collections工具类总结

    Collections工具类 Collections 是一个操作 Collection(Set. List )和 Map 等集合的工具类 Collection和Collections的区别? Coll ...

  9. Java集合工具类(三)-泛型集合工具类,用于便捷快速的定义、操作集合。包含Set的交集、并集......

    为什么80%的码农都做不了架构师?>>>    /**      * 用该方法来代替 { @code new LinkedList<E>()} 方式获得新的 { @cod ...

最新文章

  1. mysql常用语句集锦
  2. SnowFlake唯一ID生成器
  3. js base_64 解密
  4. crontab 日志_liunx 中定时清理过期日志文件
  5. lua本学习笔记功能
  6. 企业运维经典面试题汇总(3)
  7. 区块链java语言,基于Java语言构建区块链(一)—— 基本原型
  8. 2021年最推荐的十大进销存管理软件排名
  9. 计算机网络课后作业习题1
  10. 完整JAVA学习路线图,助您从JAVA小白变身秃顶大叔,迈向JAVA成神之路
  11. 汇编语言中xor指令_这个汇编代码有什么作用? (TEST,XOR,JNZ)
  12. Kotlin学习安卓篇(一)为什么要学习Kotlin?
  13. LeetCode881. 救生艇
  14. 电商网站秒杀系统如何设计
  15. ABB机器人系统和出错信息
  16. fik在计算机领域英语缩写,计算机常用英语词汇表
  17. 分享130个中国风PPT模板,总有一款适合你
  18. Java爬虫.HttpClient
  19. Vue源码实现之watcher拾遗
  20. Android 双卡双待 资料

热门文章

  1. 终于找到了:NuGet 修改包路径
  2. 【转】DevOps到底是什么意思?
  3. Execute SQL Task 参数和变量的映射
  4. 一步步编写操作系统 48 二进制程序的加载方式
  5. bootstraptable treeGrid 懒加载_Java类加载机制及自定义加载器
  6. WebStrom里设置angular提示,可以在html中提示ts文件的内容
  7. 【Codeforces - 864D】Make a Permutation!(贪心,字典序)
  8. 动手学PaddlePaddle(3):猫脸识别
  9. 0.《沉浸式线性代数》:前言
  10. java在一个类里实现存款_用Java编写一个简单的存款