2015-11-11 27 views
-3

驗證碼:爲什麼只調用println打印布爾值

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

結果:

E:\test>java A 
false 

沒有 「和」 後

+1

包裝你的布爾表達式''==是比較運算符。其結果是布爾值。另外,我懷疑你沒有編譯給定的代碼,因爲結果是'false'。 – RealSkeptic

+0

你能編輯和寫一個簡單的英文問題嗎? (我們不是電腦:-) – BrunoLevy

回答

0

爲什麼只有打印布爾?的System.out.println(「」 == STR +「和」);

因爲+加法運算符的優先級高於==等於運算符。

首先操作會str+"and"然後==將導致的Boolean這是false

"" == "and" ? = false 

Java文檔的Operators Priorities

+0

ou,狗屎,我是如此愚蠢,謝謝 –

+0

@FulndonRong歡迎您:) ......沒有親愛的只是繼續前進,不要停止寫問題... – Husam

0

,如果你只想打印true/false條件,那麼關注@ JavaHD的回答

如果您想打印trueand

然後用pranthesis 例如爲:

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