三元表达式执行顺序 逻辑运算符的运用
@Test
public void fun2(){
Studuent s=null;
String age=s==null?"0":s.getAge();
System.out.println(age);
}
三元表达式执行的顺序:先比较左边获得布尔值,根据布尔值选择执行语句。如上s.getAge()会等待布尔值为false时才执行,不会出现空指针报错;
@Test public void fun3(){ Student s = new Student(); System.out.println(s.getName()); // System.out.println(s.getName().trim()); 会报空指针 if(s.getName()!=null&&!"".equals(s.getName().trim())){ System.out.println("name不为空,不为空格,不为null"); } }
&&和|| 很好的保证了条件1成立不会运行条件2指令