Java語言基礎之陣列

2021-08-21 20:58:20 字數 3190 閱讀 4479

(一)什麼是陣列

1、概念:一組相同型別的資料的組合

陣列也是一種引用型別,

2、陣列名稱不是固定的與存放的資料的型別有關。

舉例:     

如:存放一組int型別的資料。,

陣列名稱   int

存放一組字串資料

陣列名稱   string

存放一組scanner型別的資料

陣列名稱   scanner

存放一組字元型別資料

陣列名稱   char

(二)陣列元素

元素的概念:

陣列中的每個元素都是這個陣列的元素。

修改陣列中的元素

/*將arr2的第乙個元素更改為一千*/

arr2[0] = 1000;

for (int i = 0;i(三)陣列的宣告與初始化

宣告:元素型別  變數名;

元素型別 變數名;-------不建議使用此寫法

初始化:

是指第一次賦值

變數的初始化時機:兩種

(1)宣告時直接初始化

(2)先宣告在初始化 (使用前初始化)

陣列的變數初始化:三種情況

(1)靜態初始化

string namas = {};

int nums = {};

(2)動態初始化

--規定陣列長度的寫法

int args = new int[length]

其實有預設元素:

整數型別:預設是0

浮點書型別:預設是0.0

字元型別:預設'\u0000'

布林型別:預設是false

引用資料型別:預設值null

--不規定陣列長度的寫法

double counts  = new double

(四)陣列的迴圈遍歷

使用for迴圈進行遍歷

舉例:/* 使用for迴圈進行遍歷 */

for(int i=0;i(五)陣列的長度

即陣列元素的個數

表示方式:變數名.length;

length屬性: 

- length表示陣列的大小,即最多能夠容納多少個元素 

- length並不表示實際容納元素的個數,因為陣列初始化的null也會被計數

(六)陣列的下標

下標從零開始,最後乙個元素的下標為:length-1;

下標範圍:0~length-1

(七)陣列元素的訪問(檢視)

通過下標進行檢視

語法:變數名[index]

(八)陣列元素的覆蓋(賦值,替換)

語法:變數名[index] = value;

(九)陣列間的賦值

就是指變數之間的賦值

通過乙個變數對陣列的元素進行修改

那麼與之相關的變數對應的陣列的元素也會發生變化

如:int a = ;

int b = a;

通過b修改元素,a對應的陣列也跟著改變

(十)陣列下標越界異常

出現的原因:

訪問陣列元素時的下標超出了範圍

陣列下標越界異常,編譯器檢查不出來此異常

執行時才會出現,出現的結果造成了程式的中斷結束。

正確範圍:0~length-1

錯誤下標:變數名[-1]

變數名[100]

例:int scores = ;

system.out.println(arrays.tostring(scores));

//建立5個長度的布林陣列fs

boolean fs = new boolean[5];

system.out.println(arrays.tostring(fs));

//檢視fs陣列的第六個元素

system.out.println(fs[5]);

/* 陣列下標越界異常,編譯器檢查不出來此異常

執行時才會出現,出現的結果造成了程式的中斷結束。

*/    

(十一)引用型別之arrays

陣列的工具類:arrays

使用步驟:

1:導包

2:呼叫其功能

是陣列的工具類。此類提供了很多對陣列操作的功能和方法

如:string info = arrays.tostring(陣列名)

arrays.tostring():此方法是將陣列元素一一拼接成字串

(十二)陣列的複製

工具類的複製功能,此功能有擴容或縮容的效果。

陣列的特點:一經建立長度不可變。

系統複製法:

system.arraycopy(src,start,des,start2,length);

src:表示原陣列,及被複製的陣列

start1:原陣列複製到的陣列名

工具類提供的複製方法:

元素型別 變數名 = arrays.copyof(src,newllength);

功能解釋:從原陣列的下表為0的元素開始複製

複製到長度為newlength的新陣列中

新陣列存放元素的開始位置為0

陣列學習的練習**:

public class testdemo01

5>2  true  

5>3  true  

5>1  true   --排出5

第二輪:找第二大

4>2  true  

4>3  true  

4>1  true   --排出4

第三輪:找第三大

2>3  false  

3>1  true   --排出3

第四輪:找第四大

2>1  true   --排出2 

簡單選擇排序:

基本思想如下:

在要排序的陣列中,選擇出最小(或者最大)的一

個數與第乙個位置的數交換;然後再剩下的數當

中再找最小(或最大)的與第二個位置的數交換

依次類推,直到第n-1個元素(倒數第二個)和第

n個元素(最後乙個數)比較為止。

簡單選擇排序

原始資料 ;

找出最小1  與4交換  

找出最小2  與5交換  

找出最小3  與5交換  

找出最小4  與5交換  

工具類arrays裡的排序方法:

arrays.sort(陣列名):對基本資料型別的陣列

與引用型別的陣列都可排序

Java 語言基礎之陣列 一

陣列 同一種型別資料的集合,就是乙個容器 定義陣列格式1 元素型別 陣列名 new 元素型別 元素個數 即陣列長度 說明 陣列是乙個容器.而容器屬於乙個實體,實體是用來封裝多個資料的.在記憶體中的建立有區別於其他變數,需要使用關鍵字 new 陣列一旦建立,需要明確其長度 根據型別的不同而不同,預設初...

Java 語言基礎之陣列應用

什麼時候使用陣列呢?如果資料出現了對應關係,而且對應關係的一方是有序的數字編號,並作為角標使用.這時,就必須要想到陣列的使用.也就是將這些資料儲存到陣列中,根據運算的結果作為角標,直接去查陣列中對應的元素即可.這種方式稱為查表法.需求 獲取乙個整數的十六進製制表現形式 public static v...

Java基礎之陣列

陣列是乙個固定長度的,包含了相同型別資料的容器 int a 宣告了乙個陣列變數 僅僅是這一句宣告,不會建立陣列 有時候也會寫成int a 沒有任何區別 建立陣列的時候,要指明陣列的長度,如new int 5 a new int 5 讓a這個引用,指向陣列 length屬性用於訪問乙個陣列的長度 沒有...