Java中的陣列

2021-08-18 15:52:53 字數 2420 閱讀 6911

陣列是用於儲存相同型別的元素的乙個固定大小的連續集合。陣列是用於儲存資料的集合,但往往將陣列認為是相同型別的變數的集合。

跟宣告單個變數相反,如number0,number1,... number99,宣告乙個陣列變數,如數字和使用numbers[0],numbers[1],...,numbers[99]來表示各個變數。

資料型別 陣列名;

資料型別 陣列名;

兩種方式雖然寫法與讀法都不同,但是表示著相同的含義,推薦使用第一種書寫方式,第二種是為了為了繼承c/c++的書寫風格。

1>靜態初始化:給定陣列中元素的值,陣列的長度由系統給定;

2>動態初始化:給陣列指定長度,陣列中的元素值由系統預設給定;

寫法如下:

靜態初始化:int a=new int;       (簡寫)int a=;

動態初始化:int a=new int[5];

兩種定義方法不可以同時使用,只能靜態初始化或動態初始化。

陣列元素通過索引訪問。陣列的下標是從0開始的,也就是說,它們從0開始到.length-1。(【陣列名.length】可查詢到陣列中有多少個元素)

例如輸出如上動態陣列中第乙個值與最後乙個值:

system.out.println(a[0]);

system.out.println(a[4]);

直接輸出陣列名時會輸出陣列的位址。

arrayindexoutofbound***ception:

陣列角標越界異常

出現的原因:訪問了陣列中不存在的索引值;

nullpointerexception:

空指標異常 (在實際開發中該異常是最多的)

出現的原因:物件為null,而開發者還要去使用物件,就會出現問題

解決方案:給某個物件進行非空判斷,防止程式程式空指標異常

可以設定乙個參照物,將陣列的其他值與參照物進行比較,輸出最大值或者最小值。

public static void main(string args) ;

int max= array[0];//定義最大值為該陣列的第乙個數

int min= array[0];//定義最小值為該陣列的第乙個數

//遍歷迴圈陣列

for (int i = 0; i < array.length; i++)

if(min> array[i])

}for (int i = 0; i < array.length; i++)

system.out.println();

system.out.println("這個陣列的最大值為:"+max+"\t最小值為:"+min);

}}

設定乙個中間變數將兩側的元素值進行互換。

public static void main(string args);  

int array2 = new int;

for(int i = 0; i < array.length/2; i++)

system.out.print("[");

for(int i = 0 ; i < arr.length ; i ++) else

}}

查詢的是該元素在陣列中的索引(根據索引查詢陣列的元素)

public static void main(string args)  ;

scanner sc = new scanner(system.in) ;

system.out.println("請輸入乙個資料:(1-7):");

int index = sc.nextint()-1 ;

system.out.println("你要查詢的是:"+str[index]);

}

查詢某個元素在該陣列中第一次出現的索引(根據元素查詢第一次出現的索引)

可以用if語句實現

public static int findindex(int arr,int value) 

}

資料型別 陣列名 = new 資料型別[m][n] ;

m:代表當前二維陣列中有多少個一維陣列

n:代表每乙個一維陣列中的長度

定義的方式還有以下兩種情況

資料型別  陣列名 = new 資料型別[m][n]

資料型別 陣列名 = new 資料型別[m][n]

第一種方式:  

int a=,};
第二種方式;  

int ints = new int[4][2];  

ints[i][j] =__; //分別賦值

第三種方式:第二維的長度可以動態申請 

int arr3 = new int[5];//五行的長度

for(int i=0; i

Java中的陣列

陣列的宣告格式裡,資料型別是陣列元素的資料型別,常見的有整形 浮點型 與字元型等 陣列名是用來統一這組相同資料型別元素的名稱,其命名規則和變數的相同 陣列宣告後實際上是在棧記憶體中儲存了此陣列的名稱,結下了是要在堆記憶體中配置陣列所需要的記憶體,齊產固定是告訴編譯器,所宣告的陣列要存放多少個元素,而...

JAVA中的多維陣列

宣告乙個二維陣列 int matrix new int 5 5 或者使用 int matrix 這是乙個直接初始化的格式 獲取二維陣列的長度。int martix new int 3 4 那麼martix.length 3 即行數 matrix 0 length 4 即列數 建立乙個鋸齒陣列 int...

Java中陣列的反轉

陣列反轉就是將兩個對稱的位置的元素進行交換,在這裡提供兩種實現方式 思路一 如下圖所示 1.對稱交換,所以需要兩個變數來記錄對稱的兩個位置 2.一組交換完後,左邊的需要進行加1,右邊的就需要進行減1 3.如果是奇數的話,當兩個位置相等 min max 就不會交換,4.如果是偶數的話,當兩個數擦肩而過...