期待已久的 iPad Air 2,終於到手啦!
帶著它上課去~
這次課程內容主要介紹符號運算的優先順序,光「+」號就有必須要注意的事情,如果「+」號前後有字串,則Java會自動使用字串連結,所以你想要做運算,必須確認符號的優先順序,需要時必須加上括號才不會出問題。
老師請我們把錯誤訊息COPY下來,沒想到 命令提示字元 對著左上角 案右鍵 會出現一個選單,就可以在編輯裡找到 標記 與 複製 了!
在來印象深刻的內容是在 位元運算 時,記憶體如何配置與對應的數字。當宣告一個整數時,Java會配置32 bit 的記憶體來儲存,其中最左邊的1 bit 是用來紀錄正負號,所以只剩下31 bit 可用來表示數字,最大數字為正2的31次方減1 = 2,147,483,647,最小為負2的31次方 = -2,147,483,648。
※位元邏輯運算 8 & 9 = 8
※位元邏輯運算 8 | 9 = 9
記憶體儲存正整數與負整數方式。
所以 ~ 3 = -4; ~(-4) = 3。
~ 127 = -128; ~(-128) = 127。
有號數左移 << , 有號數右移 >> 產生出的數值都是正常的;唯獨
無號數右移>>>, 數字會難以想像。如8>>>2 = 2;
-8>>>2 = 1073741822。
不同資料型態,配置不同的記憶體。
整數
byte 8bits
short 16bits
int(預設) 32bits
long 64bits
浮點數
float 32bits
double(預設) 64bits
當這樣宣告時,會出錯 long k = 2200000000; (因為22億預設的資料型態為int,超過2147483648)
必須改成這樣宣告 long k = 2200000000L; (數字後面多加 L,直接把22億宣告為64bits。)
在浮點數中,也有類似的事情發生,必須多加注意。
另外 在宣告變數時, byte 初始值可以使用字元'A' (ASCII);而char 初始值可以是數字65(ASCII)。故,Java儲存在記憶體中都是轉換成數字,再用內建的unicode對照表對應輸出。
條件式邏輯運算
♠捷徑and ( && ) (ShortCut and):如果第一個條件為false,則不執行第二個條件。
♠捷徑or ( || ) (ShortCut or):如果第一個條件為true,則不執行第二個條件。
♥非捷徑and ( & ):兩個條件都必須要執行!
♥非捷徑or ( | ) :兩個條件都必須要執行!
輸入指令
java.util.Scanner 物件參考變數 = new java.util.Scanner(System.in)
(資料夾名稱)
※下圖為 物件 語法 以及 記憶體配置概念。
後記:
1.更深刻瞭解記憶體如何儲存正整數與負整數。
2.瞭解輸入指令的宣告方式,並對物件有基礎的認識。
3.OpenOffice沒有再開發了!改成LibraOffice。
4.a++與++a的不同是後置的++碰到它要執行時,是把它的執行順序調整到最後再執行。
5.今天開車回家時,才發現彰化火車站附近原來有許多吃的!
沒有留言:
張貼留言