if、switch、while、do...while語句、區別、break、continue、和return關鍵字區別、使用while和do...while實現用戶登錄驗證

目錄

if判斷語句

判斷語句格式

列:練習判斷語句

列:求出1-100之間的偶數和

列:判斷語句與三元運算符的互換

選擇語句--switch

選擇語句格式

switch語句注意事項

練習:switch練習

for循環語句

格式

列:

while循環語句

while循環語句格式

列:while格式的使用

列:使用while實現用戶輸入密碼,如果輸入正確將登陸成功,否則重新輸入

do-while循環

do-while循環格式

列:使用do...while實現用戶輸入密碼,如果輸入正確將登陸成功,否則重新輸入

列:do...while實現登錄界面

for、while、do...while三種循環區別

break、continue和return三個關鍵字的區別

break語句

continue語句

return語句


if判斷語句

判斷語句格式

格式1:

if (關係表達式){
語句體;
};

格式2:

if (關係表達式) {
    語句體1;
} else {
    語句體2;
}

格式3:

    if (判斷條件1) {
        執行語句1;
    } else if (判斷條件2) {
        執行語句2;
    }...}else if(判斷條件n)

{
    執行語句n;
} else

{
    執行語句n + 1;
}

列:練習判斷語句

public static void main(String[] args) {
    int score = 100;
    if (score < 0 || score > 100) {
        System.out.println("你的成績是錯誤的");
    } else if (score >= 90 && score <= 100) {
        System.out.println("你的成績屬於優秀");
    } else if (score >= 80 && score < 90) {
        System.out.println("你的成績屬於好");
    } else if (score >= 70 && score < 80) {
        System.out.println("你的成績屬於良");
    } else if (score >= 60 && score < 70) {
        System.out.println("你的成績屬於及格");
    } else {
        System.out.println("你的成績屬於不及格");
    }
}

列:求出1-100之間的偶數和

int sum = 0; // 用來累加的存錢罐

for (int i = 1; i <= 100; i++) {
	if (i % 2 == 0) { // 如果是偶數
		sum += i;
	}
}
System.out.println("結果是:" + sum);

列:判斷語句與三元運算符的互換

public static void main(String[] args) {
    int a = 10;
    int b = 20; //定義變量,保存a和b的較大值
    int c;
    if (a > b) {
        c = a;
    } else {
        c = b;
    }
    // 可以上述功能改寫爲三元運算符形式
    c = a > b ? a : b;
}

選擇語句--switch

選擇語句格式

switch語句注意事項

  • 1. 多個case後面的數值不可以重複。
  • 2. switch後面小括號當中只能是下列數據類型:基本數據類型:byte/short/char/int  引用數據類型:String字符串、enum枚舉
  • 3. switch語句格式可以很靈活:前後順序可以顛倒,而且break語句還可以省略。“匹配哪一個case就從哪一個位置向下執行,直到遇到了break或者整體結束爲止。”

練習:switch練習

public static void main(String[] args) {
    //定義變量,判斷是星期幾
    int weekday = 6;
    // switch語句實現選擇 
    switch (weekday) {
        case 1:
            System.out.println("星期一");
            break;
        case 2:
            System.out.println("星期二");
            break;
        case 3:
           System.out.println("星期三");
            break;
        case 4:
            System.out.println("星期四");
            break;
        case 5:
            System.out.println("星期五");
            break;
        case 6:
            System.out.println("星期六");
            break;
        case 7:
            System.out.println("星期日");
            break;
        default:
            System.out.println("你輸入的數字有誤");
            break;
    }
}

for循環語句

格式

  • 1. 初始化語句:在循環開始最初執行,而且只做唯一一次。
  • 2. 條件判斷:如果成立,則循環繼續;如果不成立,則循環退出。
  • 3. 循環體:重複要做的事情內容,若干行語句。
  • 4. 步進語句:每次循環之後都要進行的掃尾工作,每次循環結束之後都要執行一次。

列:

	public static void main(String[] args) {
		for (int i = 1; i <= 100; i++) {
			System.out.println("我錯啦!原諒我吧!" + i);
		}
		System.out.println("程序停止");
	}

while循環語句

while循環語句格式

列:while格式的使用

int i = 1; // 1. 初始化語句
while (i <= 10) { // 2. 條件判斷
	System.out.println("我錯啦!" + i); // 3. 循環體
	i++; // 4. 步進語句
}

列:使用while實現用戶輸入密碼,如果輸入正確將登陸成功,否則重新輸入

方法2

                Scanner input = new Scanner(System.in);	
		System.out.println("請輸入用戶名和密碼:");		
		while(!("admin".equals(input.next()) & "123".equals(input.next()))) {
			System.out.println("用戶名或密碼錯誤!\n請重新輸入:");
		}
		System.out.println("登陸成功!");

方法3

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		boolean flag = true;
		String name = null;// 姓名
		String pwd = null;// 密碼
		Scanner input = new Scanner(System.in);
		// 不知道何時結束循環的時候使用,每次循環都在循環之前必須查看條件是否爲true
		while (flag) {
			System.out.println("請輸入用戶名和密碼:");
			name = input.next();
			pwd = input.next();
			// 正確用戶名admin,密碼123
			if ("admin".equals(name) && "123".equals(pwd)) {
				System.out.println("登陸成功");
				// 退出循環
				flag = false;
			}else {
				System.out.println("登陸失敗");
			}
		}
	}

 

do-while循環

do-while循環格式

int i = 1; // 1. 初始化語句
do {
	System.out.println("原諒你啦!起來吧!地上怪涼!" + i); // 3. 循環體
	i++; // 4. 步進語句
} while (i <= 10); // 2. 條件判斷

列:使用do...while實現用戶輸入密碼,如果輸入正確將登陸成功,否則重新輸入

public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner input = new Scanner(System.in);
		String name = null;// 用戶名
		String pwd = null;// 密碼
		boolean flag=true;
		System.out.println("請輸入用戶名和密碼:");
		do {
			name = input.next();
			pwd = input.next();
			if (name.equals("admin") && pwd.equals("123")) {
				System.out.println("登陸成功!");
				flag=false;
			}else {
				System.out.println("用戶名或密碼錯誤!\n請重新輸入:");
			}
		} while (flag);
	}

列:do...while實現登錄界面

 

for、while、do...while三種循環區別

  • 1. 如果條件判斷從來沒有滿足過,那麼for循環和while循環將會執行0次,但是do-while循環會執行至少一次。
  • 2. for循環的變量在小括號當中定義,只有循環內部纔可以使用。while循環和do-while循環初始化語句本來就在外面,所以出來循環之後還可以繼續使用。
public static void main(String[] args) {
	for (int i = 1; i < 0; i++) {
		System.out.println("Hello");
	}
	// System.out.println(i); // 這一行是錯誤寫法!因爲變量i定義在for循環小括號內,只有for循環自己才能用。
	System.out.println("================");
	
	int i = 1;
	do {
		System.out.println("World");
		i++;
	} while (i < 0);
	// 現在已經超出了do-while循環的範圍,我們仍然可以使用變量i
	System.out.println(i); // 2
}

break、continue和return三個關鍵字的區別

break語句

break語句:是用來結束循環,在某一條件下需要強行終止循環,而不是等到循環條件爲false時才退出循環語句,這個時候就可以使用break結束循環。一般break語句用於結束一個循環或者跳出一個循環,無論那種循環一旦在循環體中遇到break語句,系統將完全結束break語句所在的循環,開始執行該循環之後的代碼
案例4:使用循環計數1-10,並在控制檯顯示,當計數到5的時候跳出循環;當循環結束後添加顯示循環結束

continue語句

continue語句:作用是忽略本次循環,繼續開始下一次循環,不會像break語句結束循環
案例:使用循環計數1-10,並在控制檯顯示,其中忽略5(不顯示);當循環結束後添加顯示循環結束

return語句

return語句:作用是結束一個方法的,目前代碼都在主方法中,所以我們會錯以爲是結束循環或者是結束程序的

案例:使用循環計數1-10,並在控制檯顯示,當計數到5的時候結束方法;當循環結束後添加顯示循環結束

		for (int i = 0; i < 10; i++) {
			if (i == 5) {// if條件互斥,符合某一個條件,其餘條件默認不符合
				// break;// 跳出循環
				// continue;//跳過本次循環,繼續餘下循環
				return;//結束所在方法
			}
			System.out.println(i);
		}
		System.out.println("吃瓜羣衆!");
	}

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章