int x = 5;
System.out.println(x);
x++;
System.out.println(x);
為什麼()內是打x,而不是x++
System.out.println( 1 > 2); //大於
System.out.println( 1 < 2); //小於
System.out.println(5 == 5); //等於
System.out.println( 1 >= 2); //大於等於
System.out.println( 1 <= 2); //小於等於
System.out.println( 1 != 2); //不等於
//==============================
boolean boo = 1 >= 2;
System.out.println("boo: " + boo);
上面程式的=有什麼意思嗎?
因為
x++ 是運算式
x=x+1 的縮寫
而 int x 中的 x 是變數
println(x)表示要印出『x變數本身』
println(x++)則是要印出『x++運算式本身的運算結果』
現在你可以進一步思考下為什麼印出的x++是6
嗎?
如果印出++x則是7
喔!
變數後接一個『=』通常是指該變數所在的記憶體
給定等號後面的值
或運算結果
我知道這樣說明很抽象,所以有請Chatgpt解答『boolean boo = 1 >= 2;』
:
int x = 5;
意思是 建立一個 x 只能放整數變數, 賦予他 5 的數字
x++;
他其實是縮寫, 實際上行為是 x = x + 1
System.out.println(x);
意思是列印出 x 被賦予的值出來
所以看到有兩個 System.out.println(x);
只是想告訴你 x++ 過後跟原本的 x 值不同了
至於為什麼不放進去System.out.println(x++);
通常不會在print的地方做運算, 有一些放在裡面也會報錯
boolean boo = 1 >= 2;
意思是 建立一個 boo 只能放布林變數, 賦予他 1 >= 2 比較完的結果
有追根究底的心,很好。
再給你一些研究的課題好了
++x
x += x
x = x==x+1
去玩一下,變數的生態給與是很好玩的事,也是最基本的事
至於你說為何不用
System.out.println(x++)
這邊要考量程式語言能應用的做法。
還有程式判讀性的做法。
就正規來說。算是一種最終輸出。先不考量它能不能這樣做,它不該還有運算成本存在。
畢竟,那有很大的可能性會再被註解還是被刪掉。
所以,在程式的寫作上。判斷、運算、應用、輸出。如能不寫在一起就不要。
但這也不是有一定的絕對性
像是如果是以下的寫法
System.out.println(add(x))
function add(x){return x++}
這樣其實也可以算是輸出及運算分開處理的做法。
如果應用到物件的觀念。那要做的事情就可以更簡化。
總之,你先了解基本的運算符號的東西。
後期等你碰到物件或是函式類的東西。你可能會想問的東西更多了。