目錄
列:使用while實現用戶輸入密碼,如果輸入正確將登陸成功,否則重新輸入
列:使用do...while實現用戶輸入密碼,如果輸入正確將登陸成功,否則重新輸入
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("吃瓜羣衆!");
}