Stream流式思想概述

1_使用传统的方式,遍历集合,对集合进行条件筛选

 

 Demo01List.java

package com.itheima.demo01.Stream;

import java.util.ArrayList;
import java.util.List;

/*
使用传统的方式,遍历集合,对集合中的数据进行过滤
*/
public class Demo01List {
public static void main(String[] args) {
//创建一个List集合,存储姓名
List<String> list = new ArrayList<>();
list.add("张无忌");
list.add("周芷若");
list.add("赵敏");
list.add("张强");
list.add("张三丰");

//对list集合中的元素进行过滤,只要以张开头的元素,存储到一个新的集合中
List<String> listA = new ArrayList<>();
for(String s : list){
if(s.startsWith("张")){
listA.add(s);
}
}

//对listA集合进行过滤,只要姓名长度为3的人,存储到一个新集合中
List<String> listB = new ArrayList<>();
for (String s : listA) {
if(s.length()==3){
listB.add(s);
}
}

//遍历listB集合
for (String s : listB) {
System.out.println(s);
}
}
}

==================================================================================

2_使用Stream流的方式,遍历集合,

Demo02Stream.java

package com.itheima.demo01.Stream;

import java.util.ArrayList;
import java.util.List;

/*
使用Stream流的方式,遍历集合,对集合中的数据进行过滤
Stream流是JDK1.8之后出现的
关注的是做什么,而不是怎么做
*/
public class Demo02Stream {
public static void main(String[] args) {
//创建一个List集合,存储姓名
List<String> list = new ArrayList<>();
list.add("张无忌");
list.add("周芷若");
list.add("赵敏");
list.add("张强");
list.add("张三丰");

//对list集合中的元素进行过滤,只要以张开头的元素,存储到一个新的集合中
//对listA集合进行过滤,只要姓名长度为3的人,存储到一个新集合中
//遍历listB集合
list.stream()
  .filter(name->name.startsWith("张"))
  .filter(name->name.length()==3)
  .forEach(name-> System.out.println(name));
}
}

 ==========================================================================================

3_流式思想概述

 

 

原文地址:https://www.cnblogs.com/curedfisher/p/12502634.html