# Stream 流的思想和获取 Stream 流
Stream 流的三类方法
获取 Stream 流
- 创建一条流水线,并把数据放到流水线上准备进行操作
中间方法
- 流水线上的操作
- 一次操作完毕之后,还可以继续进行其他操作
终结方法
- 一个 Stream 流只能有一个终结方法
- 是流水线上的最后一个操作
生成 Stream 流的方式
Collection 体系集合
使用默认方法 stream () 生成流,default Stream<E> stream ()
Map 体系集合
把 Map 转成 Set 集合,简洁的生成流
数组
通过 Arrays 中的静态方法 stream 生成流
同种数据类型的多个数据
通过 Stream 接口的静态方法 of (T ... Values) 生成流
public static void main(String[] args) { | |
// Collection 体系的集合可以使用默认 stream () 方法生成流 | |
ArrayList<String> list = new ArrayList<>(); | |
Stream<String> stream = list.stream(); | |
Set<String> set = new HashSet<>(); | |
Stream<String> stream1 = set.stream(); | |
// Map 体系的集合间接调用 stream () 方法生成流 | |
Map<String, Integer> map = new HashMap<>(); | |
Stream<String> stream2 = map.keySet().stream(); | |
Stream<Integer> stream3 = map.values().stream(); | |
Stream<Map.Entry<String, Integer>> stream4 = map.entrySet().stream(); | |
// 数组通过 Arrays 中的静态方法 stream () 生成流 | |
String strings[] = {"hello","world","java"}; | |
Stream<String> stream5 = Arrays.stream(strings); | |
// 同种数据类型的多个数据可以通过 Stream 接口的静态方法 of (T ... Values) 生成流 | |
Stream<String> hello = Stream.of("hello", "world", "java"); | |
} |