程序员

Optional类

2017-09-11  本文已影响0人  鑫鑫哥哥丨

Optional类为Java8新引入的一个类,Optional是一个可以为null的容器对象,Optional中的一些方法可以判断容器中的这个值是否为null,在编码中可以使用这个类来判断某个参数或者某个方法的返回值是否为null,可以很直接的解决NullPointException的问题。下面是Optional类的几个方法。

首先看一下Optional类的of()方法 和ofNullable()方法,他俩都是将一个值存入Optional容器中。of和ofNullable最大的区别就是of()方法传入的参数不能为null,如果传入参数为null,则抛出NullPointerException ,而ofNullable()方法传入的参数可以为null。

public static void main(String[] args){
  //创建Optional对象实例
  Optional<String> name = Optional.of("GAME START!");
  //会抛出NullPointException
  Optional<String> nullName = Optional.of(null);
} 
public static void main(String[] args){
  //创建Optional对象实例
  Optional<String> name = Optional.ofNullable("GAME START!");
  //创建一个空的Optional对象实例
  Optional<Stirng> empty = Optional.ofNullable(null);
}
public static void main(String[] args){
  Optional<String> name = Optional.of("Game start!");
  if(name.isPersent()){
    //调用get()返回已存在的值 
    System.out.println(name.get());//输出Game start!
  }
}
  public static void main(String[] args){
    Optional<String> name = Optional.ofNullable("game start!");  
    Optional<String> empty = Optional.ofNullable(null);  
    //如果值不为null,orElse方法返回Optional实例的值。如果为null,返回传入的消息。  
    System.out.println(name.orElse("game over!"));//输出:game start!
    System.out.println(empty.orElse("game over!"));//输出:game over!
  }
上一篇下一篇

猜你喜欢

热点阅读