


package com.itheima.d2_stream;
import java.util.*;
import java.util.stream.Stream;
public class StreamDemo2 {
public static void main(String[] args) {
/** ---------------Collection集合获取流-----------------*/
Collection<String> list = new ArrayList<>(); // 标准写法后面应该是用List接口来接收,但是这里为了便于理解
// 获取Stream流
Stream<String> s = list.stream(); // Stream流(流水线)存储是字符串类型
// Map集合获取流 (Map是一直键值对的形式)
Map<String,Integer> maps = new HashMap<>();
// Map没有stream方法 只能用keySet获取键(返回一个集合),然后用该键的stream方法
// 或者用values方法,获取当前集合所有的值(返回一个集合),然后获取该值的value值
// 键流
Stream<String> keyStream = maps.keySet().stream();
// 值流
Stream<Integer> valueStream = maps.values().stream();
// 键值对流 (拿整体) maps.entrySet() 获取当前maps集合的所有键值对的集合(返回一个集合)
Stream<Map.Entry<String, Integer>> keyAndValueStream = maps.entrySet().stream();
/* -----------------数组获取流----------------------- */
String[] names = {"赵敏","小昭","灭绝","周芷若"};
// 1. 可以直接用该数组的stream方法 Arrays.stream(数组名)
Stream<String> nameStream = Arrays.stream(names);
// 2 可以用Stream接口流的of方法
Stream<String> nameStream2 = Stream.of(names);
}
}