1. 程式人生 > >《Java程式設計》第3,4周學習總結

《Java程式設計》第3,4周學習總結

201711671201《Java程式設計》第3,4周學習總結

教材學習內容總結

第3章:運算子、表示式和語句

3.1 運算子與表示式

3.1.1 算術運算子與算術表示式

1. 加減運算子:操作元是整型或浮點型資料,優先順序是4級。

2. 乘、除和求餘運算子:操作元是整型或浮點型資料,*、/、%運算子的優先順序是3級。

用算術運算子和括號連線起來的符合Java語法規則的式子,稱為算術表示式。

3.1.2 自增、自減運算子

++、--是單目運算子,可以放在操作元之前,也可以放在操作元之後。

++x(--x)先使x的值增(減)1,再使用x。

x++(x--)先使用x,再使x的值增(減)1。

3.1.3 算術混合運算的精度

精度從“低”到“高”排列的順序是:

byte short char int long float double。

如果表示式中最高精度低於int型整數,則按int精度進行運算;如果表示式中最高精度高於int型整數,則按最高精度進行運算。

3.1.4 關係運算符與關係表示式

關係運算符是二目運算子,用來比較兩個值的關係。關係運算符的運算結果是boolean型,當運算子對應的關係成立時,運算結果是true,否則是false。

結果為數值型的變數或表示式可以通過關係運算符形成關係表示式。

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

3.1.5 邏輯運算子與邏輯表示式

邏輯運算子包括&&、||、!。其中&&、||為二目運算子,實現邏輯與、邏輯或;!為單目運算子,實現邏輯非。邏輯運算子的操作元必須是boolean型資料,邏輯運算子可以用來連線關係表示式。

邏輯運算子&&和||也稱作短路邏輯運算子。

op1&&op2:當op1的值是false時,&&運算子在進行運算時不再去計算op2的值,直接就得出op1&&op2的結果是false。op1||op2:當op1的值是true時,||運算子在進行運算時不再去計算op2的值,直接就得出op1||op2的結果是true。

3.1.6 賦值運算子與賦值表示式

賦值運算子=是二目運算子,左面的操作元必須是變數,不能是常量或表示式,結合方向為從右向左

賦值表示式的值就是=左面變數的值。

注意:不要將賦值運算子=與等號關係運算符==混淆。

3.1.7 位運算子

1.按位與運算(同真為真):按位與運算子&雙目運算子,對兩個整型資料a、b按位進行運算,運算結果是一個整型資料c。

運演算法則是:如果a、b兩個資料對應位都是1,則c的該位是1,否則是0。如果b的精度高於a,那麼結果c的精度和b相同。

2.按位或運算(同假為假):按位或運算子|二目運算子,對兩個整型資料a、b按位進行運算,運算結果是一個整型資料c。

運演算法則是:如果a、b兩個資料對應位都是0,則c的該位是0,否則是1。如果b的精度高於a,那麼結果c的精度和b相同。

3.按位非運算(真就為假):按位非運算子~單目運算子,對一個整型資料a按位進行運算,運算結果是一個整型資料c。

運演算法則是:如果a對應位是0,則c的該位是1,否則是0。

4.按位異或運算(相同為假):按位異或運算子^二目運算子,對兩個整型資料a、b按位進行運算,運算結果是一個整型資料c。

運演算法則是:如果a、b兩個資料對應位相同,則c的該位是0,否則是1。如果b的精度高於a,那麼結果c的精度和b相同。

由異或運演算法則可知:a^a=0,a^0=a。

3.1.8 instanceof運算子

該運算子是二目運算子,左面的操作元是一個物件,右面是一個。當左面的物件是右面的類或子類建立的物件時,該運算子運算的結果是true,否則是false。

3.2 語句概述

1.表示式語句。2.複合語句。3.空語句。4.控制語句:條件分支語句、開關語句、迴圈語句。5、package語句和import語句。

3.3 if條件分支語句(3種形式)

if語句;if-else語句;if-else if-else語句。

3.4 switch開關語句

switch(表示式)
{
    case 常量值1:
              若干個語句
              break;
    case 常量值2:
              若干個語句
              break;
     .
     .
     .
    case 常量值n:
              若干個語句
              break;
    default:
         若干語句
}

3.5 迴圈語句

3.5.1 for迴圈語句

for(表示式1;表示式2;表示式3) {

   若干語句
}

表示式1完成變數的初始化;表示式2是值為boolean型的表示式,稱為迴圈條件;表示式3用來修整變數,改變迴圈條件。

3.5.2 while迴圈語句

while(表示式) {
    若干語句
}

3.5.3 do-while迴圈語句

do{
    若干語句
}while(表示式);

3.6 break和continue語句

break表示結束整個迴圈;continue表示結束本次迴圈,進入下一次迴圈。

3.7 for語句與陣列

for(宣告迴圈變數: 陣列的名字) {
    …
}

3.8 應用舉例

注意:如果使用者在鍵盤輸入帶小數點的數字,例如12.34,那麼reader物件呼叫hasNextDouble()返回的值是true,而呼叫hasNextByte()、hasNextInt()以及hasNextLong()返回的值都是false。

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

暫無。

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

暫無。

感悟

手寫程式碼挺有用的。

學習進度條

  程式碼行數(新增/累積) 部落格量(新增/累積)  學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時  
第三、四周 200/270 1/3 2/4