s-day07- 获取Stream流的两种方式(重点)
This commit is contained in:
@@ -0,0 +1,54 @@
|
|||||||
|
package com.inmind.stream07;
|
||||||
|
|
||||||
|
import java.util.*;
|
||||||
|
import java.util.stream.Stream;
|
||||||
|
|
||||||
|
/*
|
||||||
|
获取Stream流的两种方式(重点)
|
||||||
|
Stream流的获取方式:
|
||||||
|
1.单列集合Collection的stream方法,得到单列集合的stream流
|
||||||
|
Collection接口
|
||||||
|
default Stream<E> stream() 返回一个序列 Stream与此集合作为其来源。
|
||||||
|
2.Stream接口的of方法,将多个数据组成一个流
|
||||||
|
Stream接口
|
||||||
|
static <T> Stream<T> of(T... values) 返回其元素是指定值的顺序排序流。
|
||||||
|
*/
|
||||||
|
public class StreamDemo13 {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
//单列集合
|
||||||
|
//list集合
|
||||||
|
ArrayList<String> list = new ArrayList<>();
|
||||||
|
list.add("张三1");
|
||||||
|
list.add("张三2");
|
||||||
|
list.add("张三3");
|
||||||
|
Stream<String> stream1 = list.stream();
|
||||||
|
System.out.println(stream1);
|
||||||
|
|
||||||
|
//set集合
|
||||||
|
HashSet<String> sets = new HashSet<>();
|
||||||
|
sets.add("张三1");
|
||||||
|
sets.add("张三2");
|
||||||
|
sets.add("张三3");
|
||||||
|
Stream<String> stream2 = sets.stream();
|
||||||
|
System.out.println(stream2);
|
||||||
|
//Map双列集合没有定义stream方法,只能通过转为单列集合间接获取流
|
||||||
|
//间接获取流:1.所有的键的集合keySet() 2.所有的值的集合values() 3.所有的键值对对象的集合entrySet()
|
||||||
|
HashMap<String, String> map = new HashMap<>();
|
||||||
|
map.put("刘备", "孙尚香");
|
||||||
|
//1.所有的键的集合keySet()
|
||||||
|
Set<String> keys = map.keySet();
|
||||||
|
Stream<String> stream3 = keys.stream();
|
||||||
|
//2.所有的值的集合values()
|
||||||
|
Collection<String> values = map.values();
|
||||||
|
Stream<String> stream4 = values.stream();
|
||||||
|
//3.所有的键值对对象的集合entrySet()
|
||||||
|
Set<Map.Entry<String, String>> entries = map.entrySet();
|
||||||
|
Stream<Map.Entry<String, String>> stream5 = entries.stream();
|
||||||
|
|
||||||
|
//数组获取流
|
||||||
|
String[] arr = {"张三1","张三2","张三3"};
|
||||||
|
Stream<String> stream6 = Stream.of(arr);
|
||||||
|
Stream<Integer> stream7 = Stream.of(1, 2, 3, 4, 5);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user