Java教程專欄:https://blog.csdn.net/qq_41806966/category_9929686.html
學完此篇後,會對boolean類型更爲了解,以及能做的東西更多了...(比如交互性的判斷等...)
if
if,翻譯過來是如果的意思,是Java中的關鍵字(基本上所有編程語言都有此關鍵字...).
我們寫程序的時候通常都會判斷一些東西,例如,我想要用戶輸入爲 1,我就執行1的操作,用戶輸入2,我就執行2的操作,這種場景就必須用到 if 語句
if 語句是經常用到的語句.
if 語法
- if (條件) {條件爲 true(正確) 執行的內容}
列舉個例子來認識 if 語句(語句都是寫在方法裏的,而不是類裏)
//定義一個int類型變量 score(分數的意思)
//score爲0則是差生,1正常,2優生
int score = 0;
if (score == 0) {
System.out.println("差生");
}
if (score == 1) {
System.out.println("正常");
}
if (score == 2) {
System.out.println("優生");
}
上述代碼運行結果爲 [差生]
上篇博客已經講到了數據類型,其中有一個爲 boolean(布爾)類型,值只有 true 和 false
現在來更加深入認識一下,上述代碼中 score = 0;那麼 score == 0 則爲true(score的確是等於0的,正確,所以爲true)
(之前講過兩個等於爲等於,一個等於號爲賦值,賦值就是右邊的值賦給左邊...)
score == 1就是false(score爲0,不等於1,所以爲false).
true 和 false 都是Java中的關鍵字. 也是 boolean類型唯一的值
因此我們可以知道,if 語句中括號內爲條件,只有條件爲 true(成立)時,纔會執行 if 語句花括號內的內容.
所以上述代碼的結果爲[差生].
練習 if 語句
在之前的目錄下新建一個文件夾,並新建一個java文件(命名隨意),我的目錄是這樣的
用記事本打開 .java 文件,我們要實現以下功能: 通過用戶的輸入,購買指定商品.
首先整理一下思路,邏輯.
獲取用戶從鍵盤輸入的值很簡單,使用Scanner就行.
我們需要定義一些商品和商品價格(可自行定義),我定義的爲:
Java從入門到精通-9.9元一本,肥宅快樂水-3元一瓶,ShendiJava教程-999元一套.
接下來就是定義用戶的金額, int money = 12;//用戶有12元
剩下的就是碼代碼了
在碼代碼之前我們認識一個新的輸出寫法
System.out.println();
我們之前都是用 System.out.print(); 作爲輸出的方法,上述方法與這個不同點就是:
我們之前換行需要在字符串里加上 \n 進行換行,而System.out.println(); 則輸出完自動換行
舉個例子:
System.out.println("我執行完後可以自動換行"); System.out.print("我需要使用\\n纔可以換行"); System.out.print("上面的print沒有執行\\n 所以我和上一輸出在同一行"); System.out.println();//括號裏面可以什麼都不填,等於換一行 System.out.print("因爲上面執行了println() 所以我在新的一行");
代碼執行結果如下
通過用戶的輸入,購買指定商品.
開始碼代碼,先寫好固定的代碼
根據上面整理的思路,我們先定義用戶的金額,和商品(商品就提示用戶輸入序號),代碼如下.
接下來就是接收用戶的輸入,並使用剛學的 if 語句來判斷購買的哪個商品
創建Scanner(別忘了導入Scanner) 使用 nextInt() 接收一個 int 類型的數據(使用這個我們可以直接獲取用戶輸入的數字-不是字符串類型 是 int).
所有代碼如下
編譯運行
執行結果展示,這裏運行了三次,分別對應第1,2,3個商品
if ... else
有的時候我們可以使用 if else 語句來進行多條件語句.
else的意思是否則的意思,有幾種寫法.
如果...否則的寫法
//如果條件爲true 那麼執行 if 語句內的,否則執行 else 語句內的 //(也就是 if 語句和 else語句 必須執行一個) //很好理解,讀起來就是,例: 如果我今天吃了早飯,那我就去學習,否則我去吃早飯. if (條件) { ...條件成立執行的代碼 } else { ...條件成立執行的代碼 }
如果...否則 如果...否則如果 .......... 寫法
if (條件) { } else if (條件) { } else if (條件) { } ...此處可以接無數個else if //簡單理解就是 if (條件不滿足的話) 判斷 else if(條件),滿足則執行語句裏的代碼,不然繼續往下判斷 //如果都不滿足則都不執行.
如果...否則如果...否則如果....否則 寫法
if (條件) { } else if () { } else if () { } 此處可無限個 else if { } else { } //簡單理解,讀起來就是 //例: 如果我早上吃了飯我就去學習,否則如果我早上沒吃飯並且現在還沒到早飯時間那我繼續休息, //否則如果,我早上沒吃飯並且時間已經過了那我就直接去學習,否則我去吃飯 //也就是說,必須有一個語句會被執行.條件滿足執行對應語句,不滿足執行最後的else語句
練習 if...else語句
我們先把之前寫的代碼複製一份,並取一個新名字和更改類名與新文件名字一致
步驟(講給不懂計算機的小白聽的,懂的可以直接進入代碼部分):選中文件,按右鍵,點擊複製(快捷鍵Ctrl + C)
然後選擇文件夾空白處,右鍵,粘貼(快捷鍵Ctrl + V)
然後我們就複製文件成功了,然後我們將文件重命名一下
選擇文件,右鍵重命名(快捷鍵 F2)
然後就更改文件名即可(名稱可隨意取,但是類名要與文件名一致,所以要遵循規範,不能數字,符號等開頭)
這裏是我的
然後我們要將類名改爲與文件名一致(記得常常按 Ctrl + S 鍵執行保存)
開始編寫代碼
思路:首先我們需要修改的地方是將if修改爲if else結構,也就是下面這一塊
修改後的代碼如下
新增了一個沒有商品條件.(這裏我就不測試結果了,可自行測試)
認識了 if 和 if else,那麼是不是有一個疑問,if 和 if else有什麼區別?
if 和 if...else的區別
通過之前的學習,認識到,if 是如果的意思,else是否則的意思
if else 與 if 的區別就體現於此 例: [如果我吃了飯我就去學習,如果我沒有吃飯我就去吃飯] 與 [如果我吃了飯我就去學習,否則如果我沒有吃飯我就去吃飯] 是不一樣的,第一個是 if,if 第二個是 if...else if
通過代碼就可以清楚的感覺到區別了
我新建了一個 Test.java 文件,代碼如下
運行結果如下:
總結:
if 是條件語句,用於條件判斷
if...else與 if的區別在於, if 條件爲true則執行if語句裏的代碼(多個if語句只要條件爲true就會執行裏面的代碼)
而 if...else,只會執行其中一個語句裏的代碼(條件先爲true的那個)
下一節,我們學習循環.
對你有用的話點個贊再走吧~