JavaSE基础概述--Lambda表达式,方法引用,基础算法,异常以及序列化

Lambda表达式

作用:简化函数式接口的匿名内部类写法
函数式接口:有且仅有一个抽象方法的接口,该接口一般是被@FuncationalInterface注解检查
格式:(被重写方法的形参列表)->{被重写方法的方法体代码}
省略规则
    1.参数类型可以省略
    2.只有一个形参,()也可以省略
    3.方法体代码只有一行,{}可以省略、分号可以省略、return必须省略

方法引用

作用: 简化Lambda表达式的写法
分类
静态方法引用
        场景
            1.Lambda表达式中只是在调用一个静态方法
            2.前后参数一致
        格式
            类名::方法名

实例方法引用
        场景
            1.Lambda表达式中只是在调用一个实例方法
            2.前后参数一致
        格式
            对象名::方法名
特定类型方法引用
        场景
            1.Lambda表达式中只是在调用一个实例方法 
            2.第一个参数作为方法的调用者,后面参数作为方法的实参传递
        格式
            类型名::方法名
构造器引用
        场景
            1.如果Lambda表达式只是在创建对象
            2.前后参数一致
        格式
            类名::new

基础算法

概述:解决问题的过程和方法
冒泡排序:让元素两两之间进行对比,将最值放到数组最后
选择排序: 每轮选择一个当前元素,使用当前元素和后面的元素一一对比,将最值放到当前位置
二分查找:定义最小索引和最大索引,计算中间索引,使用查找元素和中间索引元素对比,如果大、小重新计算最小、最大、中间索引,再次对比,直到相等

递归:方法自己调用自己的一种形式

1.一定要有终止条件
2.总结递归的规律:大规模的问题可以拆分成小规模问题,大小规模问题的解决方式完全一致

异常

概述:程序出现的问题

两种处理异常方案

抛出异常

throws:在方法上声明异常,告诉调用者该方法可能出现异常,运行时异常可以不用声明,编译时异常必须声明

throw:创建一个异常对象,将其抛给调用者,调用者就必须处理该异常

捕获异常:try{ 可能出现的异常的代码 }catch(捕获异常类型 变量名){ 真正处理该异常的代码 }

序列化

作用:将java对象读写到文件中,读:反序列化  写:序列化

分类

字节序列化流

创建对象:new ObjectOutputStream(普通字节输出流)
常见方法:所有方法来自于字节输出流
特有方法: writeObject(任意对象)

字节反序列化流

创建对象:new ObjectinputStream(普通字节输入流)
常见方法:所有方法来自于字节输入流
特有方法: (任意对象)readObject()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值