Java 程式設計()  第 二章 一維陣列      下一頁

 

第二章  一維陣列

2-1 一維陣列

內容:

  • 2-1-1 一維陣列結構

  • 2-1-2 陣列動態宣告

  • 2-1-3 陣列宣告並給予初值

2-1-1 一維陣列結構

陣列(Array是一群相同『資料型態』的變數整合而成的另一種變數,並使用一個共用的參考名稱。其中『資料型態』可以是一般基本資料型態(如 intfloatdouble...等),也可以是一個『物件』型態(如 String...等)。

如圖 2-1 所示(一維陣列結構),陣列 a 包含了 8 個相同資料型態(int)的變數(稱之有 8 個元素),這些變數各自獨立的,也可分別儲存資料,之間並不相衝突;但為了使這些資料之間也某些連帶關係,利用相同的變數名稱(如 a),各自給予獨立的指標(a[i]i = 0, …, 7),並自動產生 a.length 表示該陣列元素的個數。

2-1 一維陣列結構

對資料整合與運用(如資料結構)而言,陣列是非常重要的資料型態,可用來描述許多真實環境的現象。本章先介紹一些陣列的基本觀念與運用。

2-1-2 陣列動態宣告

『一維陣列』(One dimension array表示僅有一行或一列的資料結構,但一列陣列可能包含若干個行;一行陣列也可能包含多個列之結構,如圖 2-1 所示。一維陣列僅需要一個指標變數(如 i)來索引陣列中哪一個元素(如 a[i]i = 3)。Java 語言宣告陣列的基本語法說明如下:

其實在 Java 語言裡,無論哪一種基本資料型態,或以宣告完成的物件,它都是以物件的觀念來處理,尤其在陣列資料型態裡更是明顯。如同物件一樣,宣告某一陣列變數,只不過產生了資料型態架構,必須再經由 new 敘述才能在主記憶體裡取得變數空間。基本語法如下:

陣列宣告的語法:

 範例:

Data_type Array_name[];

Array_name = new Data_type[number];

int course[];

course = new int[20];

Data_type[] Array_name = new Data_type[num];

Array_name.length() = num;

int [] course =new int [20];

course.length = 20;

第一個敘述(如 int course[])功能是宣告某一變數(course)為整數(int)的陣列變數;第二個敘述(如 course = new int[20])功能是由主記憶體取得 20 個整數空間,並配置給 course 變數使用。此兩條敘述執行完畢後,則產生 course[0]course[1]...等、course[19];需注意陣列指標是由 0 開始計算,如有 n 個元素,則最高指標是 n-1 另外,系統也會自動產生 length 變數,紀錄該變數的長度如何,如 course = int[20],則 course.length = 20。上述範例亦可簡寫成 int[] course = new int[20],一行敘述句完成宣告。

2-1-3 陣列宣告並給予初值

宣告陣列時可以給予初值,則表示由記憶體取得空間後立即存入初值數值,陣列的大小就如此被固定下來(length 變數內容),也不需再由 new 敘述來配置空間。語法格式如下:

陣列宣告並給予初值:

 範例:

Data_type Array_name[] = { …};

int course[] = {89, 90, 60, 70, 80};

// course.length = 5

上述執行後,會產生 5 個元素,分別是 course[0] = 89course[1] = 90course[2] = 60course[3] = 70 course[4] = 80,以及 course.length = 5。吾人還是取用更多範例說明如下:

吾人還是取用更多範例說明如下:

陣列宣告範例:

說明:

float weight[];

weight = new float[30]

宣告 weight 陣列變數為浮點數型態。

產生 30 個浮點數元素;weight.length=30

float weight = new float[30];

同上

String[] names;

names = String[20];

宣告 names 陣列變數為字串型態。

產生 20 個字串元素;names.length=20

char keys[] = {‘A’, ‘B’, ‘C’};

宣告產生字元陣列,並給初值。

翻轉工作室:粘添壽

 

Java 程式設計(二) 含物件導向

 

 

翻轉電子書系列: