20145320 《Java程式設計》第2周學習總結

20145320周岐浩發表於2016-03-11

20145320 《Java程式設計》第2周學習總結

教材學習內容總結

3.1 型別、變數與運算子

基本型別

整數(short、int、long) 、位元組(byte) 、浮點數(float/double) 、字元(char):漢字、英文字元都是雙位元組的

布林(boolean):boolean型別中的true/false不能與其他型別進行運算

註釋

三種註釋 //:單行、/** /:多行、/** */:javadoc文件註釋

常量

整數可以用二進位制(0bdddd),八進位制(0ddd)、十進位制(dddd)、十六進位制(0Xdddd),Java中都是有符號下整數,沒有unsigned int之類

浮點數科學計數法

小數(如1.4)預設型別是double,1.4f或1.4F的型別才是float

字元可以用Unicode 字元編碼(Code Point)來表示。

運算子

算術運算 +、-、*、/、%

關係運算: !=>、>=、<、<=、==

條件表示式 ? 成立時返回值:失敗時返回值

邏輯運算:運算結果是boolean值:true Or false, 與(&&) 、或(||) 、非(!)

位運算 :運算結果為位串(位向量)

與(&):全1為1,有0則0 ;或(|):全0為0,有1則1 ;非(~):反碼形勢表示 ;異或(^):相同為0,不同為1 ;左移(<<):最右補0 ;算術右移(>>):右移後,正數最高位補0,負數最高位補1 ;邏輯右移(>>>):右移後,最高位總是補0 ;遞增、遞減: i++,i-- ++i,--i

賦值

+=,=,-=, *=, /=, %=,&=, |=, ^=, <<=, >>=

型別轉換

短->長是安全的,長->短必須強制轉換

表示式中含不同型別,以長度最長的為準,其他的會進行型別提升(Promote)

3.2流程控制

結構化程式設計

包含三種語句

順序:計算機結構決定語句是順序執行的,正常情況下都是順序執行的

分支:分支用來處理異常情況的

迴圈:執行最常用的語句

分支

型別 if、 if...else、 if...else if、 switch...case, switch可用於整數、字元、字串等

default 分支的各種情況要滿足不重複,不遺漏的原則

迴圈

型別 for、 while、 do...while, break/continue 配合標籤可以實現goto的效果, goto可用於從多重迴圈是跳出來

教材學習中的問題和解決過程

有時我們在賦值時會遇到,所賦的值超過定義的範圍,例如假如我們在定義為byte時就很容易超過其上限127;或者精度不對,例如利用float在定義時我們所賦的值會超過其精度,從而出錯

程式碼除錯中的問題和解決過程

易知 i =8,但是 j呢?8?還是8.8?

結果

出錯了!為什麼,難道是不能強制把int 型的 i 轉化為double型 的 j?

經過老師的提示我改進了這個程式,終於可以執行出結果了

結果,j 的值竟然是0.0....

學習進度條

 

 

 

程式碼行數(新增/累積)

部落格量(新增/累積)

學習時間(新增/累積)

重要成長

目標

3500

28

300小時

 

第一週

300/300

1/1

20/20

 

第二週

500/500

2/2

40/40

 

第三週

 

 

 

 

第四周

 

 

 

 

參考資料

相關文章