數組是一種數據結構,它由相同類型的相關數據項按一定次序排列組成。
我們先看一下一個簡單的有關數組的例子來初識數組:
package test4;/** * java程序設計 TestArrayOne.java * 作者:白芷 * 時間:2017/3/4 * 說明:簡單的初步認識數組的例子 */public class TestArrayOne { public static void main(String[] args) { int[] array = new int[5];// 聲明以及初始化數組 for (int i = 0; i < array.length; i++) { array[i] = i + 1; } for (int j = 0; j < array.length; j++) { System.out.這就是一個簡單的有關數組的例子了。我們看到程序上面有關數組聲明與實例化的注釋,那么數組有多少種實例化的方式呢?在上面例子中對數組的初始化方式就是創建并初始化數組,使用new關鍵字創建了一個一個長度為5的數組。 這方法又稱為動態初始化方法,因為數組的值是在后面由系統指定的。
數組的初始化器是一個用逗號隔開的表達式列表(稱為初始化器列表),放在大括號中。這里,數組的長度由初始化器列表里面元素的個數來確定,如下代碼:
package test4;/** * Java程序設計 TestArrayTwo.java * 作者:白芷 * 時間:2017/3/4 * 說明:使用數組的初始化器初始化數組 */public class TestArrayTwo { public static void main(String[] args) { int[] array = {1,2,3,4,5};// 使用數組的初始化器初始化數組 for (int j = 0; j < array.length; j++) { System.out.println("a[" + j + "]=" + array[j]); } } /** * 輸出 * a[0]=1 * a[1]=2 * a[2]=3 * a[3]=4 * a[4]=5 */}當然上面的初始化也可寫成如下的形式:int[] array = new int[]{1,2,3,4,5}; 該方法也稱為靜態數組初始化方法。
以上就是一維數組有關的內容了,接下來我們看一下有關二維數組的!
首先我們也從一個簡單的有關二維數組的程序入手,該程序用以打印一個矩形:
package test4;/** * Java程序設計 TestArrayThree.java * 作者:白芷 * 時間:2017/3/4 * 說明:二維數組打印矩形 */public class TestArrayThree { public static void main(String[] args) { char[][] array=new char[4][4];//二維數組的初始化 for(int i=0;i<array.length;i++){ for(int j=0;j<array[i].length;j++){ array[i][j]='#'; } } for(int i=0;i<array.length;i++){ for(int j=0;j<array[i].length;j++){ System.out.print(array[i][j]+" "); } System.out.println(); } } /* * 輸出 * # # # # * # # # # * # # # # * # # # # */}在這里聲明一句,從數組的底層來看,是沒有多維數組的。(《征服C指針》中說得好,數組就是指針的語法糖)。Java語言里,數組類型是引用類型,二維數組說到底就是一維數組里面保存的引用指向了一維數組。
我們看一下一個打印三角形的例子來說明:
package test4;/** * Java程序設計 TestArrayFour.java * 作者:白芷 * 時間:2017/3/4 * 說明:二維數組打印三角形 */public class TestArrayFour { public static void main(String[] args) { char[][] array; array=new char[][]{{'#'},{'#','#'},{'#','#','#'},{'#','#','#','#'}}; for(int i=0;i<array.length;i++){ for(int j=0;j<array[i].length;j++){ System.out.print(array[i][j]+" "); } System.out.println(); } } /* * 輸出 * # * # # * # # # * # # # # */}以上就是有關數組的基本知識了。
在前面提到過的數組不會自動的調整它的大小來容納更多的元素,而ArrayList<T>則會為了容納更多的元素而自動調整大小。
| 方法 | 描述 |
|---|---|
| add() | 把一個元素添加到ArrayList的末尾 |
| clear() | 刪除ArrayList中的全部元素 |
| contains() | 判斷ArrayList中是否包含某元素 |
| get() | 返回ArrayList中指定位置上的元素 |
| indexOf() | 返回ArrayList中指定元素第一次出現的位置 |
| remove() | 移除ArrayList中指定位置上的元素,并返回該元素 |
| size() | 返回ArrayList中所有元素的個數 |
| trimToSize() | 移除ArrayList中多申請的存儲空間 |
|
新聞熱點
疑難解答