Optinal
空指针异常是导致Java应用程序失败的最常见原因,JDK8引入Optional类用来检查空值,它实际上是个容器,可以保存类型为T的值,或者仅仅保存null。
创建方式
- Optional.of(T value),返回一个Optional对象,value不能为空,否则会抛出空指针异常
- Optional.ofNullable(T value),返回一个Optional对象,value可以为空
- Optional.empty(),代表空
常见API
- optional.isPresent(),是否存在值
- optional.ifPresent(Consumer<? super T> consumer),如果存在值则执行consumer
- optional.get(),获取value
- optional.orElse(T other),如果没值则返回other
- optional.orElseGet(Supplier <? extends T> other),如果没值则执行ohter并返回
- optional.orElseThrow(Supplier <? extends X> exceptionSupplier),如果没值则执行exceptionSupplier,并抛出异常
以前防止空值出现通常会用null判断
public String getOrderName(Order order ) {
if (order == null) {
return null;
}
return order.name;
}
有了optional之后:
public String getOrderName(Order order ) {
return Optional.ofNullable(order).map(order1 -> order1.name).orElse(null);
}
14 综合
控制台编译访问Java文件
有如下的一个java类文件,其有一个main入口
public class Fly {
public static void main(String[] args) {
System.out.println(123);
}
}
使用cmd控制台先编译javac Fly.java,此时将生成Fly.class二进制文件
再使用java Fly运行刚才编译的二进制文件
文件目录结构如下:
如何在IDEA中导入jar包
https://blog.csdn.net/yinyanyao1747/article/details/90751024
新建包文件夹lib(为package类型)
复制jar包
右键:add as library