Stream流之其他使用

数组:

复制代码
package com.Lucky;

import java.util.*;

/*
数组的Stream流:   使用Arrays工具类
 */
public class StreamArray {

    public static void main(String[] args) {
        //创建数组
        int[] array={1,2,3,4,5,6,7,8,9};

        Arrays.stream(array).forEach(s-> System.out.print(s+"\t"));
    }
}
复制代码

单列集合:

复制代码
package com.Lucky;

import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedHashMap;
import java.util.LinkedList;

/*
单列集合的Stream流:   可以直接使用
 */
public class StreamList {

    public static void main(String[] args) {
        //创建单列集合
        ArrayList<String> strList=new ArrayList<>();
        LinkedList<String> LinkedList=new LinkedList<>();
        Collections.addAll(strList,"BUG","人才","精英","天才");
        Collections.addAll(LinkedList,"人才","精英","天才");

       //采用Stream流
        strList.stream().forEach(s-> System.out.print(s));
        System.out.println();
        LinkedList.stream().forEach(s-> System.out.print(s));

    }
}
复制代码

双列集合:

复制代码
package com.Lucky;

import java.util.*;

/*
双列集合的Stream流:   需要将双列集合数据转化成单列集合才能使用Stream
 */
public class StreamMap {

    public static void main(String[] args) {
        //创建双列集合
        HashMap<String,Integer> strMap=new HashMap<>();
        LinkedHashMap<String,Integer> linkedMap=new LinkedHashMap<>();
        TreeMap<String,Integer> treeMap=new TreeMap<>();

        strMap.put("BUG",999);
        strMap.put("Stream",666);
        strMap.put("唯易",5555);
        linkedMap.putAll(strMap);
        treeMap.put("TreeMap",666);
        treeMap.put("TreeMapBug",999);

       //采用Stream流
         //①将双列集合转换成单列集合【采用keySet】
        System.out.println("---- //①将双列集合转换成单列集合【采用keySet】-----");
        Set<String> str = strMap.keySet();
        Set<String> strLink = linkedMap.keySet();
        Set<String> strTree = treeMap.keySet();
        str.stream().forEach(s-> System.out.println(s));
        strLink.stream().forEach(s-> System.out.println(s));
        strTree.stream().forEach(s-> System.out.println(s));

        // ②将双列集合转换成单列集合【采用entrySey】
        System.out.println("---- // ②将双列集合转换成单列集合【采用entrySey】-----");
        Set<Map.Entry<String, Integer>> ent = strMap.entrySet();
        Set<Map.Entry<String, Integer>> entLink = strMap.entrySet();
        Set<Map.Entry<String, Integer>> entTree = strMap.entrySet();
        ent.stream().forEach(s-> System.out.println(s));
        entLink.stream().forEach(s-> System.out.println(s));
        entTree.stream().forEach(s-> System.out.println(s));
    }
}
复制代码

其他:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package com.Lucky;
 
import java.util.Arrays;
import java.util.stream.Stream;
 
/*
其他的Stream流:   直接Stream.of
       小细节:在Stream接口的of方法中,形参是一个可变参数,可以传递一些零散的数据,也可以是数组
              **但是数组的类型必须是引用类型的,不然就会将整个数组当成一个元素,存储在Stream中
 
 */
public class StreamOther {
 
    public static void main(String[] args) {
        Stream.of(1,2,3,4,5).forEach(s-> System.out.print(s+"\t"));
        System.out.println();
        Stream.of("K","N","C","X","Z").forEach(s-> System.out.print(s+"\t"));
        System.out.println();
        Stream.of('c','x','b','g','k').forEach(s-> System.out.print(s+"\t"));
        System.out.println();
 
 
        System.out.println("--------   小细节实战----------");
        //但是数组的类型必须是引用类型的,不然就会将整个数组当成一个元素,存储在Stream中
        int[] arr={1,2,3,4,5,6};  //int类型的数组
        Stream.of(arr).forEach(s-> System.out.println(s));
 
 
 
    }
}

  

posted @   唯易人生  阅读(29)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示