為什么System.out.println闊號里的值可以直接運算出來,不應該先在前面運算出布爾值再代入闊號嗎?
public class HelloWorld{
? ? public static void main(String[] args) {
int a=16;
double b=9.5;
String str1="hello";
String str2="imooc";
System.out.println("a等于b:" + (a == ?b));
System.out.println("a大于b:" + (a > ?b));
System.out.println("a小于等于b:" + (a <= ?b));
System.out.println("str1等于str2:" + (str1 == ?str2));
}
}
2017-08-09
運算符有優先級,先執行()里的,在第一個system的語句里,應該是先判斷出(a==b)為false后,再執行第二個()的語句,通過+和前面的字符連接起來輸出。放在前面一個單獨語句寫和放在里面的一個括號里是一個意思啊。
2017-08-08
(a==b)和true等價,不必先運算出布爾值再代入。
我是這么理解的