第二章 基礎知識(2)

Mr-Wanter發表於2018-06-28

4、迴圈

跳出程式化思維,不只是i=0;i<10;i++
for(初始化執行語句;執行條件;迭代語句){
執行語句

int i=0;
for(System.out.println('a');i<3;System.out,println('b'),i++){
    System.out.println("c");//acbcbcb
}

5、break & continue

break :使用在switch-case或迴圈中
如果使用在迴圈中,表示結束當前迴圈(跳出for迴圈,不再執行以下次迴圈體)
continue:使用在迴圈中,表示結束當次迴圈(跳出本次迴圈條件的迴圈體,繼續執行下一個迴圈條件)
迴圈體前面可以新增標籤(自定義)與break和continue組合使用
break和continue語句後不可新增任何語句,因為不可能會被執行,編譯報錯

lable:for(int i=1;i<5;i++){
    for(int j=1;j<=10;j++){
     	if(j%4==0)
            //break;//輸出 123-123-123-123
            //continue;//輸出 123567910-123567910-123567910-123567910
            //break lable;//輸出 123
            continue lable;//輸出 123123123123
        System.out.print(j);
    }
    System.out.print("-");
}

6、陣列元素的記憶體結構


一維陣列記憶體結構

  1. 堆中存放的都是new出來的物件,預設值為該物件資料型別的預設值(int 0、char ‘’、String null )
  2. 棧中存放的是物件的指標(自動分配)


二維陣列的記憶體結構

7、物件的記憶體結構


物件的記憶體結構