java05 選擇結構
阿新 • • 發佈:2017-06-29
會員 分組 表達 編碼 屏幕 判斷 中一 logic music
public class Demo01Change { public static void main(String[] args) { /** * 實現等量的轉換 */ int a = 50; // 可樂 int b = 100; // 雪碧 // 創建空杯子 int temp; // 01.把a的值給temp 把可樂轉進了空杯子 temp = a; // 02.把b的值給a a = b;// 03.把temp的值給b b = temp; System.out.println("a的值====" + a); System.out.println("b的值====" + b); } }
public class Demo02if { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("請您輸入張浩的java成績:");double javaScore = scanner.nextDouble(); /** 01.使用三元表達式 解決問題 * String result = (javaScore > 90) ? "獎勵map4" : "沒有獎勵"; * * 02.使用 選擇結構 if(表達式){ * 輸出語句 * } * 表達式:必須是boolean * 表達式為true 會執行 輸出語句 * * {}只有一條輸出語句的時候,可以省略!但是不建議省略*/ if (javaScore > 90) { System.out.println("獎勵map4"); } } }
public class Demo03if { public static void main(String[] args) { /** * 張浩的Java成績大於98分,而且音樂成績大於80分,老師會獎勵他; * 或者Java成績等於100分,音樂成績大於70分,老師也會獎勵他 */ Scanner scanner = new Scanner(System.in); System.out.println("請輸入您的java成績"); double javaScore = scanner.nextDouble(); System.out.println("請輸入您的音樂成績"); double musicScore = scanner.nextDouble(); /** * 條件判斷 */ if ((javaScore > 98 && musicScore > 80) || (javaScore == 100 && musicScore > 70)) { System.out.println("老師獎勵您一個包包....."); } } }
public class Demo04logical { public static void main(String[] args) { /** * 條件判斷 * 邏輯運算符 (短路) *1. && 與,並且 表達式1 && 表達式2 * 01.如果表達式1為false,則不會執行表達式2,返回false * 02. 如果表達式1為true,則繼續執行表達式2 * 03.兩個表達式都為true!整體才返回true * 04.如果其中一個表達式為false,整體返回false *2. || 或者 * 01.如果其中一個表達式為true,整體返回true * 02.如果表達式1為true,則不會執行表達式2,返回true *3. ! 非 *if (!(5 > 4) && (6 < 9)) { System.out.println("進入了代碼塊"); } */ int a = 5; int b = 6; if (!(a++ == b) && (++a == b++)) { System.out.println("進入了代碼塊"); } System.out.println(++a); } }
public class Demo05ifelse { public static void main(String[] args) { /** * * 三元表達式 可以 替換if else * * if(表達式){ * //表達式為true執行的代碼塊 * }else{ * //表達式為false執行的代碼塊 * } * * 如果張浩Java考試成績大於98分,老師就獎勵他一個MP4, * 否則老師就罰他進行編碼 */ int javaScore = 100; // 定義java成績 /** if (javaScore > 98) { System.out.println("老師就獎勵他一個MP4"); } if (javaScore <= 98) { System.out.println("老師就罰他進行編碼"); }*/ if (javaScore > 98) { System.out.println("老師就獎勵他一個MP4"); } else { System.out.println("老師就罰他進行編碼"); } System.out.println("謝謝您使用程序"); } }
public class Demo06Buy { /** * 買彩票 如果體彩中了500萬,我買車、資助希望工程、去歐洲旅遊 如果沒中,我買下一期體彩,繼續燒高香 */ public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("請輸入您中獎的金額:"); double money = scanner.nextDouble(); // 獲取用戶的中獎金額 /** * 01.使用三元表達式 */ String result = (money > 500) ? "買車、資助希望工程、去歐洲旅遊" : "買下一期體彩,繼續燒高香"; // System.out.println(result); /** * 02.使用if else */ if (money > 500) { System.out.println("買車、資助希望工程、去歐洲旅遊"); } else { System.out.println("買下一期體彩,繼續燒高香"); } } }
public class Demo07Random { public static void main(String[] args) { /** * 產生隨機數 從控制臺接收一個4位會員號 分解獲得百位數 判斷是否是幸運會員 Math.random():返回的是 0 - 1之間的小數!但是不包含1! */ double random = Math.random(); System.out.println("隨機數為:" + random); // 怎麽讓隨機數是 0-9之間的數字? System.out.println(random * 10); // double轉換成 int 強制類型轉換 int result = (int) (random * 10); System.out.println(result); Scanner scanner = new Scanner(System.in); System.out.println("請您輸入一個會員卡號:"); int num = scanner.nextInt(); // 怎麽獲取百位的數字 int bai = num / 100 % 10; if (bai == result) { System.out.println("幸運用戶"); } else { System.out.println("歡迎下次光臨!"); } } }
public class Demo08IflseIf { public static void main(String[] args) { /** * 成績>=80 :良好 成績>=60 :中等 成績<60 :差 */ Scanner scanner = new Scanner(System.in); System.out.println("請您輸入成績:"); double score = scanner.nextDouble(); /** * 多個if 實現不了 我們想要的結果 if (score >= 80) { System.out.println("良好"); } if (score >= 60) { System.out.println("良好"); } if (score < 60) { System.out.println("差"); } */ /** * 多重if * if(條件1){ * 滿足條件1 執行 * }else if(條件2){ * 滿足條件2 執行 * }else if(條件3){ * 滿足條件3 執行 * }else if(條件4){ * 滿足條件4 執行 * }else{ * 都不滿足時 執行 * } */ if (score >= 80) { System.out.println("良好"); } else if (score >= 60) { System.out.println("中等"); } else { System.out.println("差"); } } }
public class Demo09ByCar { public static void main(String[] args) { /** * 我想買車,買什麽車決定於我在銀行有多少存款 如果我的存款超過500萬,我就買凱迪拉克 否則,如果我的存款超過100萬,我就買帕薩特 否則, 如果我的存款超過50萬,我就買依蘭特 否則, 如果我的存款超過10萬,我就買奧托 否則, 如果我的存款10萬以下 ,我買捷安特 */ Scanner scanner = new Scanner(System.in); System.out.println("請您輸入存款金額:"); double money = scanner.nextDouble(); if (money >= 500) { System.out.println("買凱迪拉克"); } else if (money >= 100) { System.out.println("買帕薩特"); } else if (money >= 50) { System.out.println("買依蘭特"); } else if (money >= 10) { System.out.println("買奧托"); } else if (money < 10) { System.out.println("買捷安特"); } /** * 只要滿足其中一個條件 則後續判斷的代碼不會執行! int a = 5; if (a++ > 5) { System.out.println(a); } else if (++a == 6) { System.out.println(a); } else if (a++ <= 7) { System.out.println(a); } */ } }
public class Demo10 { public static void main(String[] args) { /** * 需求: * 學校舉行運動會,百米賽跑跑入10秒內的學生有資格進決賽, * 根據性別分別進入男子組和女子組 * * 分析: * 判斷是否能夠進入決賽 在確定進入決賽的情況下,判斷是進入男子組,還是進入女子組 嵌套if:在一個條件判斷的代碼塊中,又寫了一個或者多個條件判斷 */ Scanner scanner = new Scanner(System.in); System.out.println("請您輸入賽跑的成績(秒):"); double score = scanner.nextDouble(); if (score <= 10) { // 進入了決賽 System.out.println("進入了決賽!請您輸入性別:"); String sex = scanner.next(); /** * 根據性別分組 * equals:判斷兩個字符串內容是否一致 */ if (sex.equals("男")) { System.out.println("恭喜您進入了男子組!"); System.out.println("請您輸入身高:"); double height = scanner.nextDouble(); if (height > 190) { System.out.println("巨人組"); } else { System.out.println("矮人組"); } } else { System.out.println("恭喜您進入了女子組!"); } } else { System.out.println("淘汰....."); } } }
public class Demo11 { public static void main(String[] args) { /** * 需求: * 普通顧客購物滿100元 9折 會員購物 8折 會員購物滿200元 7.5折 */ Scanner scanner = new Scanner(System.in); System.out.println("請您輸入是否是會員(Y/N):"); String answer = scanner.next(); System.out.println("請您輸入購物金額:"); double money = scanner.nextDouble(); double pay = 0; // 用戶最後需要支付的金額 // 判斷用戶是否是會員 equalsIgnoreCase忽略大小寫比較 if (answer.equalsIgnoreCase("y")) { System.out.println("您是會員"); // 判斷折扣 if (money >= 200) { pay = money * 0.75; } else { pay = money * 0.8; } } else {// 普通用戶 System.out.println("您是普通用戶"); if (money >= 100) { pay = money * 0.9; } else { pay = money; } } System.out.println("您的實際支付金額是:" + pay); } }
public class Demo12 { public static void main(String[] args) { /** * 需求: * 會員積分 折 扣 x < 2000 9折 2000 ≤ x < 4000 8折 4000 ≤ x < 8000 7折 x ≥ 8000 6折 */ Scanner scanner = new Scanner(System.in); System.out.println("請您輸入會員積分:"); int custCount = scanner.nextInt(); // 定義一個變量來接收 折扣 double discount; if (custCount < 2000) { discount = 0.9; } else if (2000 <= custCount && custCount < 4000) { discount = 0.8; } else if (4000 <= custCount && custCount < 8000) { discount = 0.7; } else { // 大於8000 discount = 0.6; } System.out.println("您享受的折扣是:" + discount); } }
如果快捷點 屏幕倒轉
java05 選擇結構