1. 程式人生 > 其它 >Day05-switch-idea反編譯-while-dowhile-for迴圈-99乘法表-轉義字元

Day05-switch-idea反編譯-while-dowhile-for迴圈-99乘法表-轉義字元

switch多選擇結構

 package jiegou;
 ​
 import java.util.Scanner;
 ​
 public class Day0501 {
     public static void main(String[] args) {
         Scanner scanner = new Scanner(System.in);
         System.out.println("請輸入成績:");
         String grade = scanner.next();
         switch (grade){   //switch是匹配,switch是在jdk7之後才支援除了八大基本資料型別的
             case "A":    //case是穿透
                 System.out.println("優秀");
                 break;   //break是跳出打斷,如果沒有就會一直輸出到有break的
             case "B":
                 System.out.println("良好");
                 break;
             case "C":
                 System.out.println("及格");
                 break;
             default:
                 System.out.println("不及格");
                 scanner.close();
         }
     }
 }

  

通過idea進行反編譯

while迴圈



 1 package jiegou;
 2  3  public class Day0502 {
 4      public static void main(String[] args) {
 5          int sum = 0;
 6          int flag = 0;
 7          while (flag<100){//1到100,如果是<=的話就是1到101相加   (就是等於100的時候會停止)
 8              flag +=1; //因為寫在前面
 9              sum = sum + flag;
10 System.out.println("第"+flag+"個,然後相加為:"+sum); 11 } 12 System.out.println("1相加到100的結果為:"+sum);//5050 13 } 14 }//正常寫法從1到100 (1+..+100) 15 package jiegou; 16 17 public class Day0502 { 18 public static void main(String[] args) { 19 int sum = 0; 20 int flag = 0;
21 while (flag<=100){//0到101,如果是<的話就是1到100相加 (就是等於101的時候會停止) 22 23 sum = sum + flag; 24 flag +=1; //因為寫在後面,就會多出一個等於(while (flag<=100)) 25 System.out.println("第"+flag+"個,然後相加為:"+sum); 26 } 27 System.out.println("1相加到100的結果為:"+sum);//5050 28 } 29 }//特殊寫法結果不變從1到101 (0+1+..+101)

do while迴圈結構

 1  package jiegou;
 2  3  public class Day0503 {
 4      public static void main(String[] args) {
 5          int i = 0;
 6          while(i<0){//判斷出錯誤就不執行while迴圈語句裡的sout了
 7              System.out.println(i);
 8          }
 9          System.out.println("=================");
10          do {
11              System.out.println(i);//輸出0,因為dowhile迴圈是先執行後判斷
12          }while (i<0);
13          
14      }
15  }

for迴圈最有效的迴圈語句



for(;;){}  //死迴圈

  



for(){ //行
  for(){ //列
  }
}

  

1 package jiegou;
2 3  public class Day0505 {
4      public static void main(String[] args) {
5          for (int i = 0; i < 3; i++) {//0 1 2
6              System.out.println(i);//0 1 2(i的執行情況)執行3次
7          }
8      }
9  }


 1 package jiegou;
 2  3  public class Day0504 {
 4      public static void main(String[] args) {
 5          int sum = 0;
 6          int sum2 = 0;
 7          for (int i = 0; i <=100; i++) {//總共執行101次,從0開始執行到100,i++相當於放後面,後面就要加等於
 8              if (i%2==1){
 9              sum = sum + i;
10              }else{
11                  sum2 = sum2 + i;
12              }
13          }
14          System.out.println("所有奇數和: "+sum);//2500
15          System.out.println("所有偶數和: "+sum2);//2550
16      }
17  }
 1  package jiegou;
 2  3  public class Day0506 {
 4      public static void main(String[] args) {
 5          //迴圈輸出1-1000之間能被5整除的數且沒行輸出3個
 6          for (int i = 1; i <= 1000; i++) { //1到1000
 7              if (i%5==0){
 8                  System.out.print(i+"\t");//\t
 9              }
10              if (i%(5*3)==0){//輸出3個就換行
11                  System.out.println();
12              }
13          }
14      }
15  }

99乘法表

  1. 先列印乘法表的第一列

  2. 我們先把固定的1用一個迴圈標起來

  3. 去掉重複項, i<=j

  4. 調整樣式



 1 package jiegou;
 2  3  public class Day0507 {
 4      public static void main(String[] args) {
 5          //列印99乘法表
 6          for (int j = 1; j <= 9; j++) {
 7              for (int i = 1; i <= j; i++) {
 8                  System.out.print(j+"*"+i+"="+j*i+"\t");
 9              }
10              System.out.println();
11          }
12          
13      }
14  }

轉義字元

java轉義字元:
\ddd 1到3位8進位制資料所表示的字元(ddd)

\uxxxx 1到4位16進位制數所表示的字元(xxxx)

\' 單引號字元

\\ 反斜槓字元

\r 回車

\n 換行

\f 換頁

\t tab

\b 退格