Java基礎班學習筆記(3)

來源:互聯網
上載者:User

標籤:

知識要點:運算子(掌握)    鍵盤錄入(掌握)    流程式控制制語句    if語句(掌握)
 1:運算子(掌握) (1)算術運算子  A:+,-,*,/,%,++,--  B:+的用法   a:加法   b:正號   c:字串串連符  C:/和%的區別   資料做除法操作的時候,/取得是商,%取得是餘數  D:++和--的用法   a:他們的作用是自增或者自減   b:使用    **單獨使用     放在操作資料的前面和後面效果一樣。     a++或者++a效果一樣。    **參與操作使用     放在運算元的前面:先自增或者自減,再參與操作      int a = 10;      int b = ++a;     放在運算元的後面:先參與操作,再自增或者自減      int a = 10;      int b = a++; (2)賦值運算子  A:=,+=,-=,*=,/=,%=等  B:=叫做賦值運算子,也是最基本的賦值運算子   int x = 10; 把10賦值給int類型的變數x。  C:擴充的賦值運算子的特點   隱含了自動強制轉換。    面試題:#面試#    short s = 1;    s = s + 1;    //編譯報錯,可能損失精度       short s = 1;    s += 1;        //正確,擴充的賦值運算子,隱含了自動強制轉換。    s += 1 ; 不等價於 s = s + 1;                 而是等於 s = (s的資料類型)s + 1    請問上面的代碼哪個有問題? (3)比較子  A:==,!=,>,>=,<,<=  B:無論運算子兩端簡單還是複雜最終結果是boolean類型。  C:千萬不要把==寫成了= (4)邏輯運算子  A:&,|,^,!,&&,||  B:邏輯運算子用於串連boolean類型的式子  C:結論   &:有false則false   |:有true則true   ^:相同則false,不同則true。    情侶關係。   !:非true則false,非false則true      &&:結果和&是一樣的,只不過有短路效果。左邊是false,右邊不執行。   ||:結果和|是一樣的,只不過有短路效果。左邊是true,右邊不執行。 (5)位元運算符(瞭解)    A:^的特殊用法   一個資料針對另一個資料位元異或兩次,該數不變   B:面試題    #面試#   a:請實現兩個變數的交換    **採用第三方變數    **用位異或運算子     左邊a,b,a     右邊a^b   b:請用最有效率的方式計算出2乘以8的結果    2<<3

位元運算符的細節

<<

空位補0,被移除的高位丟棄。

>>

被移位的二進位,最高位是0,右移後,空缺位補0;最高位是1,最高位補1。

>>>

被移位二進位最高位無論是0或者是1,空缺位都用0補。

&

任何二進位位和0進行&運算,結果是0;和1進行&運算結果是原值。

|

任何二進位位和0進行 | 運算,結果是原值;和1進行 | 運算結果是1。

^

任何相同二進位位進行 ^ 運算,結果是0;不相同二進位位 ^ 運算結果是1。

(6)三元運算子  A:格式   比較運算式?運算式1:運算式2;  B:執行流程:   首先計算比較運算式的值,看是true還是false。   如果是true,運算式1就是結果。   如果是false,運算式2就是結果。  C:案例:(略)   a:比較兩個資料是否相等   b:擷取兩個資料中的最大值   c:擷取三個資料中的最大值    2:鍵盤錄入(掌握) (1)實際開發中,資料是變化的,為了提高程式的靈活性,我們加入鍵盤錄入資料。 (2)如何?呢?目前就記住  A:導包   import java.util.Scanner;   位置:在class的上邊  B:建立對象   Scanner sc = new Scanner(System.in);  C:擷取資料   int x = sc.nextInt(); (3)把三元運算子的案例加入鍵盤錄入改進。  3:流程式控制制語句 (1)順序結構 從上往下,依次執行 (2)選擇結構按照不同的選擇,執行不同的代碼 (3)迴圈結構 做一些重複的代碼  4:if語句(掌握) (1)三種格式  A:格式1   if(比較運算式) {    語句體;   }      執行流程:    判斷比較運算式的值,看是true還是false    如果是true,就執行語句體    如果是false,就不執行語句體   B:格式2   if(比較運算式) {    語句體1;   }else {    語句體2;   }      執行流程:    判斷比較運算式的值,看是true還是false    如果是true,就執行語句體1    如果是false,就執行語句體2     C:格式3   if(比較運算式1) {    語句體1;   }else if(比較運算式2){    語句體2;   }   ...   else {    語句體n+1;   }      執行流程:    判斷比較運算式1的值,看是true還是false    如果是true,就執行語句體1    如果是false,就繼續判斷比較運算式2的值,看是true還是false    如果是true,就執行語句體2    如果是false,就繼續判斷比較運算式3的值,看是true還是false    ...    如果都不滿足,就執行語句體n+1 (2)注意事項  A:比較運算式無論簡單還是複雜,結果是boolean類型  B:if語句控制的語句體如果是一條語句,是可以省略大括弧的;如果是多條,不能省略。   建議:永遠不要省略。  C:一般來說,有左大括弧,就沒有分號,有分號,就沒有左大括弧。  D:else後面如果沒有if,是不會出現比較運算式的。  E:三種if語句其實都是一個語句,只要有一個執行,其他的就不再執行。 (3)案例:  A:比較兩個數是否相等  B:擷取兩個數中的最大值  C:擷取三個數中的最大值(if語句的嵌套)  D:根據成績輸出對應的等級  E:根據月份,輸出對應的季節  F:根據x計算對應y的值並輸出 (4)三元運算子和if語句第二種格式的關係  所有的三元運算子能夠實現的,if語句的第二種格式都能實現。  反之不成立。  如果if語句第二種格式控制的語句體是輸出語句,就不可以。  因為三元運算子是一個運算子,必須要有一個結果返回,不能是一個輸出語句。

Java基礎班學習筆記(3)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.