1.流程式控制制 break語句:1.結束其所在的迴圈,如果想結束外迴圈,加標記,break 標記 2.結束switch case選擇判斷語句 continue:結束某一次迴圈,直接進入下一次迴圈 (一般應用於for迴圈中,遇到continue則布直接跳到for迴圈的i++部分,結束當前迴圈,執行下一次 ...
1.流程式控制制
break語句:1.結束其所在的迴圈,如果想結束外迴圈,加標記,break 標記
2.結束switch case選擇判斷語句
continue:結束某一次迴圈,直接進入下一次迴圈
(一般應用於for迴圈中,遇到continue則布直接跳到for迴圈的i++部分,結束當前迴圈,執行下一次迴圈)
2.函數(方法):作用:實現特定功能的一段獨立的代碼段,可反覆使用。
應用場景:每次遇到相同的功能,都要寫相同的代碼,出現了重覆性代碼
優點:避免了重覆性代碼,減少冗餘
提高復用性
可讀性
可維護性
方便分工合作
定義:
public static 數據類型 函數名(參數類型 參數1,參數2,參數3.......) :
{
執行語句;
return 返回值
}
使用:調用,什麼時候用,什麼時候調用
函數專註於功能:函數不應該專註於數據,所以使用參數的方式接收傳入的數據
通常函數使用的數據由main函數提供,自定義的函數只要實現該實現的功能即可
函數記憶體的入棧和出棧:java記憶體:棧,堆,方法區,本地方法區,寄存器
函數記憶體用棧(棧是先進後出)。外部函數使用完立刻釋放記憶體。
函數是入棧的,函數中定義的變數是在棧中開闢記憶體,當函數內部的代碼全部執行完,函數出棧,也就是釋放記憶體
3.return
註意:1.函數沒有返回值也可以使用return,表示函數結束
2.如果一個函數有返回值,那麼在任何情況下都要有返回值。(例如a<b a>b a==b這三種情況都要有返回值)
4函數的重載:在同一個class中,出現了多個名稱相同,但參數不同的函數,這種現象叫重載。
參數不同:個數不同,類型不同,個數類型都不同
註意:重載和返回值無關。
5.自定義函數:
明確參數(明確自定義的函數是否需要接收參數)
明確返回值(明確自定義的函數是否有返回值,返回值的類型是什麼)
6.數組:屬於引用數據類型,是一種數據類型
定義:一組連續的存儲空間,存儲多個相同數據類型的值
特點:長度固定,類型相同
new int[5];//在記憶體中開闢連續的5個整型空間
java的記憶體是有java虛擬機劃分的,JVM虛擬機把記憶體分為5塊,棧,堆、方法區、本地方法區,寄存器(寄存器存放的是位元組碼的行號)
棧:什麼樣的數據入棧?在方法(函數)、語句中定義的變數(局部變數)
特點:作用域結束了立刻釋放記憶體
堆:什麼樣的數據入堆?實體(數組、對象)(引用數據類型都是入堆的)
特點:存儲的都是多個數據
arr存放的數組的記憶體首地址,我們稱arr是數組的引用。
當沒有引用指向數組時,這個數組就沒辦法被使用了,這個數組就成為垃圾,但不會立刻釋放記憶體,等待垃圾回收線程。
特點:1.堆中有預設值,棧中沒有預設值
2.垃圾回收線程回收機制,沒有引用的不會立刻釋放記憶體,等待垃圾回收線程。
引用類型的變數存儲的是引用類型