1. Optional函数:
1.1 Optional.of(T value)
当value为空时,会报nullpointexception
1.2 Optional.ofNullable(T value)
当value为空时创建空实例,不为空时创建optional实例
1.3 isPresent()
判断是否包含值
Optional<T> opt=Optional.ofNullable(T value); if(opt.isPresent){...}else{...}
1.4 orElse(T value)
如果调用对象包含值则返回值,否则返回orElse()中value
public class OptionalTest { public static void main(String[] args) { Apple apple1=new Apple(); Apple apple2=new Apple(); apple1.setColor("red"); apple1.setWeight(3.0); List<Apple> appleList= Arrays.asList(apple1,apple2); orElseTest(appleList); } public static void orElseTest(List<Apple> appleList){ Apple ap=new Apple(); ap.setWeight(0.0); ap.setColor("none"); for(Apple apple:appleList){ String color=Optional.ofNullable(apple.getColor()).orElse(ap.getColor()); System.out.println("color is:"+color); } } } result: color is:red color is:none