401_01 Java基礎 | 003 Java 控制語句
阿新 • • 發佈:2020-10-22
01 Java基礎 | 003 Java 控制語句
1. 順序結構
- 一句一句順序執行
2. 選擇結構
2.1 if 選擇
2.1.1 if 單分支
if(條件){
true執行;
}
public class DemoIf { public static void main(String[] args) { int age = (int)(Math.random() * 100); //隨機生成[0,100)的數字賦值給變數age if (age < 18){ System.out.println("是個小屁孩"); } if (age >=18){ System.out.println("成年人啦"); } } }
2.1.2 if-else-if 雙分支
if(條件){
true
}else{
false
}
public class DemoIf { public static void main(String[] args) { int age = (int)(Math.random() * 100); //隨機生成[0,100)的數字賦值給變數age if (age < 18){ System.out.println("是個小屁孩"); }else if(age >= 18){ System.out.println("成年人啦"); } } }
2.1.3 if-else-if 多分支
if(條件1){
條件1 true
}else if(條件2){
條件1 false 且 條件2 true
}...
else{
前邊所有 false
}
public class DemoIf { public static void main(String[] args) { int age = (int)(Math.random() * 100); //隨機生成[0,100)的數字賦值給變數age if (age < 15){ System.out.println("小屁孩,好好玩"); }else if(age < 25){ System.out.println("青年人,好好學習"); }else if(age < 45){ System.out.println("中年人,好好工作"); }else if(age < 65){ System.out.println("中老年,補補鈣"); }else if(age < 85){ System.out.println("老年人,多運動"); }else{ System.out.println("老壽星,古來稀!"); } } }
2.1.4 巢狀 if-else 條件語句
if(條件a){
if(條件b){
語句塊
}else{
語句塊
}
}else{
語句塊
}
2.2 switch-case選擇
switch(表示式){
case 值1://注意是:不是;
語句序列;
[break];
case 值2:
語句序列;
[break];
...
[default:
預設語句;]
}
3. 迴圈結構
- 迴圈語句包含4部分
- 初始化語句
- 迴圈條件
- 迴圈體
- 迭代語句
3.1 while 迴圈
while(條件){
迴圈體
迭代因子
}
public class WhileTest {
public static void main(String[] args) {
int i = 0;
int sum = 0;
while(i <= 100){ //計算從1加到100等於多少
sum += i; //等同於sum = sum + 1;
i++;
}
System.out.println("Sum= " + sum);
}
}
3.2 do-while 迴圈
do{
迴圈體;
}while(布林表示式);
public class WhileTest {
public static void main(String[] args) {
int i =0;
int sum = 0;
do {
sum += i;
i++;
}while(i <= 100);
System.out.println("Sum= " + sum);
}
}
3.3 for 迴圈
for(初始表示式(設定迴圈變數初值);布林表示式(條件判斷);步進(迭代因子,遞增或遞減)){
迴圈體;
}
public class ForTest {
public static void main(String[] args) {
int sum = 0;
for (int i = 0; i <= 100; i++){
sum += i;
}
System.out.println("Sum= " + sum);
}
}
3.4 迴圈巢狀(雙重for)
public class ForTest {
public static void main(String[] args) {
for(int i = 1; i <= 5; i++){
for(int j = 1; j<= 5; j++){
System.out.println(i + " ");
}
}
}
}
3.5 break / continue / return
3.5.1 break
-
結束迴圈(常用)
public class BreakTest { public static void main(String[] args) { for (int i = 0; i < 10; i++){ System.out.println("i的值是" + i); if (i == 2){ break; } } } }
-
直接結束外層迴圈
public class BreakTest { public static void main(String[] args) { outer: //標籤,就像標記一樣 for (int i = 0; i < 5; i++){ for (int j = 0; j < 3; j++){ System.out.println("i的值為:" + i + "\t" + "j的值為:" + j); if (j == 1){ break outer; } } } } }//結果 i = 0; j = 0; i = 0 ; j = 1;
-
switch- case選擇語句中
3.5.2 continue
-
continue break 忽略本次迴圈剩下的語句,接著開始下次迴圈 完全終止迴圈本身 public class ContinueTest { public static void main(String[] args) { for (int i = 0; i < 3; i++){ System.out.println("i的值是:" + i); if(i == 1){ continue; } System.out.println("continue後的輸出語句"); } } }//忽略了i=1的迴圈
-
結束標籤
public class ContinueTest { public static void main(String[] args) { outer: for (int i = 0; i < 5; i++){ for (int j = 0; j < 3; j++){ System.out.println("i的值為:" + i + "\t" + "j的值為:" + j); if (j == 1){ continue outer; } } } } }
3.5.3 return
-
return功能:
- 結束方法
- 有返回值則返回返回值
public class ReturnTest { public static void main(String[] args) { for (int i = 0; i < 3; i++){ System.out.println("i的值是:" + i); if(i == 1){ return; } System.out.println("return後的輸出語句"); } } }
寄語:遇到問題:
上網查相關資料
整合到自己的專案
總結問題
有哪些方式解決辦法,各個方式有哪些優缺點,什麼情況用什麼解決方式
整理到自己的知識體系中