null的伟大与可怕 之 Optional操作 3
null的伟大与可怕 之 String字符串 1
http://blog.csdn.net/sunrainamazing/article/details/71591334
null的伟大与可怕 之 String字符串方法2
http://blog.csdn.net/sunrainamazing/article/details/71593030
null的伟大与可怕 之 Optional操作 3
http://blog.csdn.net/sunrainamazing/article/details/71596437
package sun.rain.amazing.strnull;
import sun.rain.amazing.bean.User;
import org.junit.Test;
import java.util.Optional;
/**
* Created by sunRainAmazing on SUN_RAIN_AMAZING
* @author sunRainAmazing
*/
public class OptionalNull {
private final static String s1 ="null";
private final static String s2 = null;
private final static String s3 = "";
/**
* Objects.requireNonNull()--进行判断是否为null 外抛异常
* Optional.ofNullable() --有效的控制空指针异常
*/
@Test
public void isNotNullA2(){
// Objects.requireNonNull(s2);
System.out.println(s2);//null
//Optional.empty
System.out.println(Optional.ofNullable(s2));
User user = null;//null
System.out.println(user);
//Optional.empty
System.out.println(Optional.ofNullable(user));
//进行判断是否抛出异常
// User u = Objects.requireNonNull(user);
// 判断是否为非null对象 是则返回 true 否返回false
System.out.println(Optional.ofNullable(user)
.isPresent());
}
/**
* 求字符串的长度--可以有效的控制空指针异常
* @param str 传入的参数
* @return
*/
public static int getStringLength(String str){
return Optional.ofNullable(str)
.map(String::length)
.orElse(0);
}
}