进阶day07-获取Stream流的两种方式(重点)(单列集合&数组)
This commit is contained in:
57
javaSE-day07/src/com/inmind/stream03/StreamDemo17.java
Normal file
57
javaSE-day07/src/com/inmind/stream03/StreamDemo17.java
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
package com.inmind.stream03;
|
||||||
|
|
||||||
|
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 StreamDemo17 {
|
||||||
|
public static void main(String[] args) {
|
||||||
|
//1.单列集合获取流
|
||||||
|
//list集合:ArrayList LinkedList
|
||||||
|
List<String> lists = new ArrayList<>();
|
||||||
|
lists.add("张无忌");
|
||||||
|
lists.add("周芷若");
|
||||||
|
lists.add("赵敏");
|
||||||
|
lists.add("张三丰");
|
||||||
|
Stream<String> stream = lists.stream();//多态
|
||||||
|
System.out.println(stream);
|
||||||
|
|
||||||
|
//set集合:HashSet LinkedHashSet TreeSet
|
||||||
|
Set<String> sets = new HashSet<>();
|
||||||
|
sets.add("张无忌");
|
||||||
|
sets.add("周芷若");
|
||||||
|
sets.add("赵敏");
|
||||||
|
sets.add("张三丰");
|
||||||
|
Stream<String> stream1 = sets.stream();
|
||||||
|
System.out.println(stream1);
|
||||||
|
|
||||||
|
//2.双列集合获取流
|
||||||
|
//Map双列集合没有定义stream方法,只能通过转为单列集合间接获取流
|
||||||
|
//间接获取流:1.所有的键的集合keySet() 2.所有的值的集合values() 3.所有的键值对对象的集合
|
||||||
|
//2.1 所有的键的集合keySet()
|
||||||
|
HashMap<String, String> map = new HashMap<>();
|
||||||
|
map.put("刘备", "孙尚香");
|
||||||
|
map.put("吕布", "貂蝉");
|
||||||
|
Set<String> set = map.keySet();
|
||||||
|
Stream<String> stream2 = set.stream();
|
||||||
|
|
||||||
|
//2.2 所有的值的集合values()
|
||||||
|
Collection<String> values = map.values();
|
||||||
|
Stream<String> stream3 = values.stream();
|
||||||
|
//2.3 所有的键值对对象的集合
|
||||||
|
Set<Map.Entry<String, String>> entries = map.entrySet();
|
||||||
|
Stream<Map.Entry<String, String>> stream4 = entries.stream();
|
||||||
|
|
||||||
|
//3.Stream接口的of方法
|
||||||
|
Stream<Integer> stream5 = Stream.of(1, 2, 3, 4);
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user