java.util.stream.Stream<T>是Java 8 新加入的最常用的流接口。(这并不是一个函数式接口)
获取一个流非常简单,有以下几种常用的方式:
所有的Collection集合都可以Stream默认方法获取流
default Stream<T> stream()
String接口的静态方法of可以获取数组对应的流。
static <T> Stream <T> of(T...values)
参数是一个可变参数,呢么我们就可以传递一个数组
注意:都是要转为单列集合再转为Stream流 比如Map集合有key和value就要先拿出来变成单列集合再用
//两种方法
第一种是集合 是用集合中的方法stream();吧单列集合转化为Stream流
第二种使用Stream接口中的方法of 来将数组转化为Stream流
package demo02;
import java.util.*;
import java.util.stream.Stream;
/*
java.util.stream.Stream<T>是Java 8 新加入的最常用的流接口。(这并不是一个函数式接口)
获取一个流非常简单,有以下几种常用的方式:
所有的Collection集合都可以Stream默认方法获取流
default Stream<T> stream()
String接口的静态方法of可以获取数组对应的流。
static <T> Stream <T> of(T...values)
参数是一个可变参数,呢么我们就可以传递一个数组
注意:都是要转为单列集合再转为Stream流 比如Map集合有key和value就要先拿出来变成单列集合再用
//两种方法
第一种是集合 是用集合中的方法stream();吧单列集合转化为Stream流
第二种使用Stream接口中的方法of 来将数组转化为Stream流
*/
public class Demo01GetStream {
public static void main(String[] args) {
//集合转换为Stream流
List<String> list = new ArrayList<>();
Stream<String> stream1 = list.stream();
Set<String> set = new HashSet<>();
Stream<String> stream2 = set.stream();
Map<String,String> map = new HashMap<>();
//keySet();获取键
Set<String> keySet = map.keySet();
Stream<String> stream3 = keySet.stream();
//获取值 存储到一个Collection中
Collection<String> valuecollection = map.values(); //value返回的是一个collection集合
Stream<String> stream4 = valuecollection.stream();
//获取键值对(键与值的映射关系)
Set<Map.Entry<String, String>> entries = map.entrySet();
Stream<Map.Entry<String, String>> stream5 = entries.stream();
//把数组转化为Stream流
Stream<Integer> stream6 = Stream.of(1,2,3,4,5,6);
//可变参数可以传递数组
Integer[] arr1 ={1,2,3,4,5,6};
Stream<Integer> stream7 = Stream.of(arr1); //数组转化为Stream流两种方法
String[] arr2 ={"a","ab","c"};
Stream<String> stream8 = Stream.of(arr2);
}
}