JAVA基础知识点23-Stream、单例模式

 Stream:

Stream 流
集合侧重数据的存储
stream测试数据的计算
把数据源中的数据进行流式操作

步骤:
    1.获取stream
    2.流式的中间操作
    3.终止行为|操作

注意:
    1.stream不会修改原数据源中数据的
    2.stream的中间操作每次回返回新的流,流是一次性的流 ,无法重复使用
    3.惰性加载,延迟执行
public class StreamDemo01 {
    static List<String> ls = List.of("aa","bbb","cccc","ddddd");
    public static void main(String[] args) {
        //1.获取Stream
        //1)Collection->default Stream<E> stream() 返回以此集合为源的顺序 Stream
        Stream<String> stream =  ls.stream();

        //2)static <T> Stream<T> stream(T[] array) 返回以指定数组作为源的顺序Stream 。
        Stream<Character> stream2 = Arrays.stream(new Character[]{'a','b','c','d','e'});

        //3)static <T> Stream<T> of(T... values) 返回其元素为指定值的顺序有序流。
        Stream<Integer> stream3 = Stream.of(1,2,3,4,5);

        //中间

        //终止操作
        stream.forEach(System.out::println);

    }
}

 

//1.获取流
        Stream<String> stream = ls.stream();

        //2.中间操作
        //过滤
        stream = stream.filter(s->{
           // System.out.println("过滤....");
            return s.length()>=3;
        });

        //截取
        stream = stream.limit(4);

        //跳过   去重(equals)
        stream = stream.skip(2).distinct();

        //3.终止操作
        stream.forEach(System.out::println);

 单例模式:饿汉式,懒汉式

单例模式: 某一个类型只能存在一个实例
    饿汉式 : 类加载第一次时构建实例
    懒汉式 : 方法调用时候才创建实例(延迟装载)
    枚举
    静态内部类

    步骤:
        1.构造器私有化                -->外部无法创建对象,对象由内部自己构建,提供给外部使用
        2.私有的静态的该类型的引用
        3.公共的静态的访问方式

   饿汉式:
    不推荐使用,无法实现延迟装载,实例也有可能没有使用浪费内存
    线程安全的
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值