Java基础-Stream流

Stream流

下一篇文章Java基础-File类

1、Stream流初体验

  • 体验Stream流
  • 创建一个集合,存储多个字符串元素
  • “张三丰”,“张无忌”,“张翠山”,“王二麻子”,“张良”,“谢广坤”
  • 把集合中所有以"张"开头的元素存储到一个新的集合
  • 把"张"开头的集合中的长度为3的元素存储到一个新的集合
  • 遍历上一步得到的集合
public class MyStream1 {
 
    public static void main(String[] args) {
 
        //集合的批量添加
        ArrayList<String> list1 = new ArrayList<>(List.of("张三丰","张无忌","张翠山","王二麻子","张良","谢广坤"));
        //list.add()

        //遍历list1把以张开头的元素添加到list2中。
        ArrayList<String> list2 = new ArrayList<>();
        for (String s : list1) {
 
            if(s.startsWith("张")){
 
                list2.add(s);
            }
        }

        //遍历list2集合,把其中长度为3的元素,再添加到list3中。
        ArrayList<String> list3 = new ArrayList<>();
        for (String s : list2) {
 
            if(s.length() == 3){
 
                list3.add(s);
            }
        }
        for (String s : list3) {
 
            System.out.println(s);
        }
        System.out.println("=======================");
       //Stream流
        list1.stream().filter(s->s.startsWith("张"))
                .filter(s->s.length() == 3)
                .forEach(s-> System.out.println(s));
    }
}

2、Stream流获取方法

Stream流的获取 单列集合 : 集合对象.stream(); 双列集合 : 不能直接获取,需要间接获取

集合对象.keySet().stream();

集合对象.entrySet().stream(); 数组 :

Arrays.stream(数组名);

同种数据类型的多个数据:

Stream.of(数据1,数据2,数据3......);
public class MyStream2 {
 
    public static void main(String[] args) {
 
        //单列集合
        //method1();//ctrl+alt+m抽取方法快捷键

        //双列集合
        //method2();

        //数组
        //method3();

        //同种数据类型的多个数据
        //method4();

    }

    private static void method4() {
 
        Stream.of(1,2,3,4,5,6,7,8).forEach(s-> System.out.println(s));
    }

    private static void method3() {
 
        int [] arr = {
 1,2,3,4,5};
        Arrays.stream(arr).forEach(s-> System.out.println(s));
    }

    private static void method2() {
 
        HashMap<String,Integer> hm = new HashMap<>();
        hm.put("zhangsan
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值