JavaSE語法基礎(3)---函數、數組java
函數的概念:實現特定功能的一段代碼,可反覆使用。數組
函數的出現減小代碼冗餘,提升代碼的複用性,可讀性,可維護性,能夠使每一個功能模塊獨立起來,方便分工合做。函數
函數的三要素:返回值、函數名、參數表spa
咱們能夠在類中,與main方法(函數)並行的位置定義一個函數,若是咱們定義的函數由返回值類型,那麼咱們必須3d
要返回相應類型的值。若是函數的返回值類型是void,那麼咱們能夠不需給予返回值,或者在函數中使用return ;結束函數。blog
調用函數時,會優先執行函數內部代碼,結束後,返回到函數調用處,繼續向下執行。排序
繼續看這個源文件:
內存
方法的重載:函數名(方法名)相同,參數列表中的參數的個數、位置、類型至少有一個不一樣。咱們稱其爲方法的重載v8
方法重載與返回值、修飾符無關。io
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
概念:一組連續的存儲空間,存儲多個相同數據類型的值。
數組中的每一個數據格被稱爲 「 數組元素 」
對每一個元素進行賦值或取值的操做被稱爲「 元素的訪問」
數據類型 [] 數組名;
數組名 = new 數據類型[ [ 長度 ];
數據類型 [] 數組名 = new 數據類型[ [ 長度 ];
數據類型 [] 數組名 = new 數據類型 []{ value1,value2,value3 ,...};
數據類型 [] 數組名 = {value1,value2,value3,...}; // 顯示初始化,注意:不可換行
遍歷:從頭到尾,逐一對數組的每一個元素進行訪問。
數組名.length 可動態得到數組長度。
建立數組時,必須顯式指定長度,並在建立以後不可更改長度。
擴容的思路:
建立大於原數組長度的新數組 , 將原數組中的元素依次 複製 到新數組中。
循環將原數組中全部元素逐一賦值給新數組。
System.arraycopy( 原數組, 原數組起始, 新數組, 新數組起始, 長度 );
java.util.Arrays.copyOf( 原數組 ,新長度 ); // 返回帶有原值的新數組。
數組做爲引用類型之一,其變量中存儲的是數組的地址。
完成元素複製後,需將新數組地址,賦值給原變量進行替換。
概念:可接收多個同類型實參,個數不限,使用方式與數組相同。
語法:數據類型 ... 形參名 // 必須定義在形參列表的最後,且只能有一個。
冒泡排序:相鄰的兩個數值比較大小,互換位置。
選擇排序:固定值與其餘值依次比較大小,互換位置。
JDK 排序: java.util.Arrays.sort( 數組名 ); //JDK 提供(升序)
概念:一維數組中的一維數組;數組中的元素,仍是數組。
數據類型 [][] 數組名;
數組名 = new 數據類型[ [ 高維長度 ][ 低維長度 ];
數據類型 [][] 數組名 = new 數據類型[ [ 高維長度 ][ 低維長度] ]; ;
數據類型 [][] 數組名 = new 數據類型[ [ 高維長度 ][] ; // 不規則數組,自行 new 低維數組
數據類型 [][] 數組名 = { { v1,v2,v3},{v4,v5},{v6,v7,v8,v9} }; //顯式初始化,不可換行.
高維數組中的每個元素,保存了低維數組的地址。
訪問低維長度:array[0].length 首個低維數組的長度
訪問低維數組元素:array[0][0] 首個低維數組的首個元素
二維數組的應用:楊輝三角