为什么println只打印布尔值

时间:2015-11-11 10:46:19

标签: java

守则:

class A {
    public static void main(String[] args) {
        String str="";
        System.out.println(""==str+"and");
    }
}

结果:

E:\test>java A 
false

没有"和"之后

2 个答案:

答案 0 :(得分:0)

  

为什么只打印布尔值?的System.out.println(“” == STR +“和”);

因为+加法运算符的优先级高于==相等运算符。

第一个操作是str+"and"然后==将由Boolean生成false

"" == "and" ? = false

Operators Priorities

的Java文档

答案 1 :(得分:0)

如果您只想打印true/false条件,请关注@JavaHD的回答

如果您要打印trueand

然后用pranthesis包装你的布尔表达式 e.g:

System.out.println((""==str)+"and");