if 条件结构与switch条件选择结构
1.基本if選擇結構:
語法:? ? ? ? ? if ( 條件 ) {?
? ? ? ? ? ? ? ? ? ? ? ? ? //代碼塊?
? ? ? ? ? ? ? ? ? ? ? }
流程圖:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
示例:張浩Java成績大于90分,老師獎勵他iPhone6s ,該怎么做呢?
import java.util.Scanner;
public class GetPrize {
?? ?public static void main(String[] args) {
?? ??? ?Scanner input = new Scanner(System.in);?
? ? ? ? System.out.print("輸入張浩的Java成績: "); //提示要輸入Java成績
? ? ? ? int score = ?input.nextInt(); ?? ?//從控制臺獲取Java成績
? ? ? ? if ( score > 90 ) { ? ??? ??? ??? ?//判斷是否大于90分
? ? ? ? ? ? ?System.out.println("老師說:不錯,獎勵一個iPhone5!");
? ? ? ? }
?? ?}
}
2.使用復雜條件的if選擇結構(使用邏輯運算符,且要注意邏輯運算優先級)
示例:張浩Java成績大于90分,并且音樂成績大于80分時,或者Java成績等于100分,音樂成績大于70分時,老師獎勵他,該怎么做呢?
import java.util.Scanner;
public class GetPrize2 {
?? ?public static void main(String[] args) {
?? ??? ?Scanner input = new Scanner(System.in);?
? ? ? ? System.out.print("輸入張浩的Java成績: "); //提示要輸入Java成績
? ? ? ? int score1 = ?input.nextInt(); ?? ?//從控制臺獲取Java成績
? ? ? ? System.out.print("輸入張浩的音樂成績: "); //提示要輸入音樂成績
? ? ? ? int score2 = ?input.nextInt(); ?? ?//從控制臺獲取音樂成績
? ? ? ? if ((score1>90 && score2>80) || (score1==100 && score2>70)) {
? ? ? ? ? ? ?System.out.println("老師說:不錯,獎勵一個iPhone5!");
? ? ? ? }
?? ?}
3.if-else選擇結構
語法:? ? ? ? ? if ( 條件 ) {?
? ? ? ? ? ? ? ? ? ? ? //代碼塊1 ?
? ? ? ? ? ? ? ? ? ? ? ?}else {?
? ? ? ? ? ? ? ? ? ? ? ? ? ? //代碼塊2?
? ? ? ? ? ? ? ? ? ? ? ? ? ? }
流程圖:
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
?示例:如果張浩Java考試成績大于90分,老師就獎勵他一個iPhone6s?
?否則老師就罰他蹲馬步。
import java.util.Scanner;
public class SimpleIfElse {
?? ?public static void main(String[] args) {
?? ??? ?Scanner input = new Scanner(System.in);?
? ? ? ? System.out.print("輸入張浩的Java成績: "); //提示要輸入Java成績
? ? ? ? int score = ?input.nextInt(); ?? ?//從控制臺獲取Java成績
? ? ? ? if ( score > 90 ) {
? ? ? ? ? ? System.out.println("老師說:不錯,獎勵一個iPhone5!");
? ? ? ? }else{
? ? ? ? ?? ?System.out.println("老師說:懲罰蹲5分鐘馬步!");
? ? ? ? }
?? ?}
}
?4.多重if選擇結構
語法:? ? ? ? ? ? ? ? if ( 成績>=80) {?
? ? ? ? ? ? ? ? ? ? ? ? ? ? //代碼塊1 ?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?else if (成績>=60) {?
? ? ? ? ? ? ? ? ? ? ? ? ? ? //代碼塊2?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?}
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?else {?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?//代碼塊3?
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? }
? ??
?流程圖:
?
?示例:對學員的考試成績評測
? ? ? ? ? ? ? ?成績>=80 :良好?
? ? ? ? ? ? ? ?成績>=60 :中等
? ? ? ? ? ? ? ?成績<60 ? :差
import java.util.Scanner;
public class ScoreAssess {
?? ?public static void main(String[] args) {
?? ??? ?Scanner input = new Scanner(System.in);?
? ? ? ? System.out.print("請輸入考試成績: "); //提示要輸入考試成績
? ? ? ? int score = ?input.nextInt(); ?? ?//從控制臺獲取成績
?? ? ? ?if (score >= 80) { // 考試成績>=80
?? ??? ??? ?System.out.println("良好");
?? ??? ?} else if (score >= 60) { // 80>考試成績>=60
?? ??? ??? ?System.out.println("中等");
?? ??? ?} else { // 考試成績<60
?? ??? ??? ?System.out.println("差");
?? ??? ?}
?? ?}
}
5.嵌套if選擇結構
語法:? ? ? ? ? if(條件1) {
? ? ? ? ? ? ? ? ? ? ? ?if(條件2) {
? ? ? ? ? ? ? ? ? ? ? ? ? ? 代碼塊1
? ? ? ? ? ? ? ? ? ? ? ? ? ? } else {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?代碼塊2
? ? ? ? ? ? ? ? ? ? ? ? ? ? }
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?}?else {
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?代碼塊3
? ? ? ? ? ? ? ? ? ? ? ? ? ? ?}
流程圖:
? ? ? ? ? ? ? ? ? ? ?
?示例:學校舉行運動會,百米賽跑跑入10 秒內的學生有資格進決賽,根據性別分別進入男子組和? ? ? ? ? ? ? 女子組
提示:字符串的比較使用equals()
import java.util.*;
public class RunningMatch {
?? ?public static void main(String[] args) {
?? ??? ?Scanner input = new Scanner(System.in);
?? ??? ?System.out.print("請輸入比賽成績(s):");
?? ??? ?double score = input.nextDouble();
?? ??? ?System.out.print("請輸入性別:");
?? ??? ?String gender = input.next();
?? ??? ?if(score<=10){
?? ??? ??? ?if(gender.equals("男")){
?? ??? ??? ??? ?System.out.println("進入男子組決賽!");
?? ??? ??? ?}else if(gender.equals("女")){
?? ??? ??? ??? ?System.out.println("進入女子組決賽!");
?? ??? ??? ?}
?? ??? ?}else{
?? ??? ??? ?System.out.println("淘汰!");
?? ??? ?}
?? ?}
}
?
6.switch選擇結構
語法:? ? ? ? ?switch (表達式) {
? ? ? ? ? ? ? ? ? ? case 常量 1:
? ? ? ? ? ? ? ? ? ? ? ?語句;
? ? ? ? ? ? ? ? ? ? ?break;
? ? ? ? ? ? ? ? ? ? case 常量 2:
? ? ? ? ? ? ? ? ? ? ?語句;
? ? ? ? ? ? ? ? ? ? ?break;
? ? ? ? ? ? ? ? ? ? ?…
? ? ? ? ? ? ? ? ? ? default:
? ? ? ? ? ? ? ? ? ? 語句;
? ? ? ? ? ? ? ? ? ? ?}
示例:韓嫣參加計算機編程大賽
? ? ? ? ? ?如果第一名,參加麻省理工大學組織的1個月夏令營
? ? ? ? ? ?如果第二名,獎勵惠普筆記本電腦一部
? ? ? ? ? ?如果第三名,獎勵移動硬盤一個
? ? ? ? ? ?否則,不給任何獎勵
public class Compete2 {
?? ?public static void main(String[] args) {
?? ??? ?int mingCi = 1; ?//名次
? ? ? ? switch (mingCi){
? ? ? ? ? ? case 1:
? ? ? ? ? ? ? ? System.out.println("參觀麻省理工大學計算機學院組織1個月夏令營");
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? case 2:
? ? ? ? ? ? ? ? System.out.println("獎勵hp筆記本一部");
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? case 3:
? ? ? ? ? ? ? ? System.out.println("獎勵移動硬盤一部");
? ? ? ? ? ? ? ? break;
? ? ? ? ? ? default:
? ? ? ? ? ? ? ? System.out.println("沒有任何獎勵");
? ? ? ? }
?? ?}
}
7.總結:
if選擇結構,包括以下形式;
基本if選擇結構:可以處理單一或組合條件的情況
if-else選擇結構:可以處理簡單的條件分支情況
多重if選擇結構:可以處理分段的條件分支情況
嵌套if選擇結構:可以處理復雜的條件分支情況
switch選擇結構:
多重分支并且條件判斷是等值判斷的情況
?
總結
以上是生活随笔為你收集整理的if 条件结构与switch条件选择结构的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [Nowcoder] 2021年度训练联
- 下一篇: HTML文本格式化标签详解