Java里基础的三元运算符等价于
if(value==null)
   value = "";
else
   value = value.trim();

解决方案 »

  1.   

    加点括号楼主就明白了
    value = ((value == null) ? "":value.trim()); 
      

  2.   

    value = value == null 这句话怎么解???
      

  3.   


    谢谢! 我问的不是三元  而是 value = value == null 怎么解释???
      

  4.   

    你看下运算符的优先级就明白了 !
    value = value == null ? "":value.trim(); 
    等价于
    value = (value == null ? "":value.trim();) 
    就是括号里面的结果复给Value;晕!~
      

  5.   

    恩,就像楼上各位所说,关键先弄清优先级,这个表达式先进行的是后面的三元运算,然后把得出的值赋值给前面的value
      

  6.   

    value = value == null 由右向左分析1.value==null 布尔运算返回结果为真或假2.再将布尔运算的值赋给value