Java流程控制(一)
- 1.用戶互動Scanner
- 2.順序結構
- 3.選擇結構
- if單選結構
- if雙選擇結構
- if多選擇結構
- 嵌套的if結構
- switch多選擇結構
1.用戶互動Scanner
- 之前我們學的基本語法中我們并沒有實作程式和人的互動,但是Java給我們提供了這樣一個工具類,我們可以獲取用戶的輸入,java.util.Scanner是Java5的新特性,
我們可以通過Scanner類來獲取用戶的輸入 - 基本語法
Scanner s = new Scanner(System.in);
- 通過Scanner類的next( )與nextLine( )方法獲取輸入的字串,在讀取前我們一般需要使用hasNext( )與hasNextLine( )判斷是否還有輸入的資料,

程式最后記得輸入scanner.close()關閉scanner,減少資源的占用
2.順序結構
- JAVA的基本結構就是順序結構,除非特別宣告,否則就按照順序一句一句執行,
- 順序結構是最簡單的結構演算法,
- 陳述句與陳述句之間,框與框之間是按從上到下的順序進行的,它是由若干個依次執行的處理步驟組成的,
它是任何一個短發都離不開的一種基本演算法結構,
3.選擇結構
-
if單選結構
我們很多時候需要去判斷一個東西是否可行,然后我們采取執行,這樣一個程序在程式中用if陳述句表示
語法
if(布爾運算式){
//如果布爾運算式為true將執行的陳述句
}

-
if雙選擇結構
場景:公司要收購一個軟體,成功了:給人支付100萬元,失敗了:自己找人開發,
在這種場景下用一個if就搞不定了,我們需要有兩個判斷,需要一個雙選擇結構(
if-else)
語法:
if(布爾運算式){
//如果布爾運算式的值為true
}else{
//如果布爾運算式的值為false
}

-
if多選擇結構
場景:可能真實情況可能存在ABCD等多種選擇,存在區間多級判斷,比如90-100就是A,80-90就是B…,生活中我們有很多時候的選擇也不僅僅只有兩個,多以我們需要一個多選擇結構來處理這類問題!
語法:
if(布爾運算式1){
//如果布爾運算式 1的值為true,則執行
}else if(布爾運算式2){
//如果布爾運算式 2的值為true,則執行
}else if(布爾運算式3){
//如果布爾運算式 3的值為true,則執行
}else{
//如果以上布爾運算式都不為true,執行代碼
}

-
嵌套的if結構
使用嵌套的if…else陳述句是合法的,也就是說你可以在另一個if或者else if陳述句中使用if或者else if陳述句,你可以像if陳述句一樣嵌套else if…else,
語法:
if(布爾運算式1){
//如果布爾運算式 1的值為true,執行
if(布爾運算式2){
//如果布爾運算式 2的值為true,執行
}
}
思考?我們需要尋找一個數,在1-100之間(提示:二分法)
-
switch多選擇結構
- 多選擇結構還有一個實作方式就是switch case陳述句,
- switch case陳述句判斷一個變數與一系列值中某個值是否相等,每個值成為一個分支,
- switch陳述句中的變數型別可以是:
- byte、short、int或者char
從Java SE 7開始,switch支持字串String型別了- 同時case標簽必須為字串常量或字面量,
switch(expression){
case value:
//陳述句
break;
case value:
//陳述句
break;
//你可以有任意數量的case陳述句
default://可選
//陳述句
}




順著檔案找到我們當時寫代碼前建好的包,找到class檔案

我們無法直接把檔案從IDEA上粘貼上去,所以需要找到存放java檔案的檔案夾,直接把class檔案放進去

總結:
-
每一個物件都有自己的hashCode,每一個字符中文都有它對應的hash值,然后IDEA通過hash值來判斷比較
-
代碼編譯以后,在位元組碼他就是像(上圖)這樣執行的
-
直接把class檔案丟到IDEA里面就可以查看他的原始碼(簡單暴力的反編譯方法),如果想下一些其它的反編譯工具可以自行百度
-
多看原始碼!
學習資料:狂神說
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/257810.html
標籤:其他
下一篇:Gulp還能這么玩?
