簡單來講就是相同類型數據的集合。java
數組是一種用一個名字來標識一組有序且類型相同的數據組成的派生數據類型,它佔有一片連續的內存空間。數組
數組做爲一個總體有如下幾個特徵:code
基本語法結構:視頻
數據類型 數組名[ ]; 或者 數據類型[ ] 數組名;(首選)blog
如:int Height[ ];索引
分配內存的格式:內存
數組名 = new 數據類型[個數];get
如:Height = new int[40];io
注:數組聲明建立首先必須聲明數組變量,才能在程序中使用數組。class
數組的元素是經過索引訪問的,數組索引從0開始。當獲取數組長度時爲:arrays.length.
java語言使用new操做符來建立數組,語法以下
dataType[ ] arrayRefVar = new dataType[arraySize];
初始化分爲靜態初始化和動態初始化。
靜態初始化是在聲明數組的同時賦值。
動態初始化是在聲明數組後對其賦值。
數組求和代碼示例
package Array; public class arrayDemo01 { public static void main(String[] args) { int[] nums;//聲明一個數組 nums = new int[10];//建立一個數組 //以上兩句等同於==》int[] nums = new int[10]; //給數組賦值 nums[0]= 1;//下標從0開始 nums[1]= 2; nums[2]= 3; nums[3]= 4; nums[4]= 5; nums[5]= 6; nums[6]= 7; nums[7]= 8; nums[8]= 9; nums[9]= 10; //計算全部元素的和 int sum = 0; for (int i = 0; i < nums.length; i++) { //搞清楚數組的長度。 sum = sum + nums[i]; } System.out.println("總和爲" +sum); } }
java數組內存簡單分析
在使用數組時,必定要注意下標越界的問題
下標的合法區間:[0,length-1]
越界則會報錯:ArrayIndexOutOfBoundsException:數組下標越界異常
(基於IDEA)
一維數組的簡單使用:
package Array; public class arrayDemo02 { public static void main(String[] args) { int [] arrays = {1,2,3,4,5}; //打印數組的所有元素 for (int i = 0; i < arrays.length; i++) { System.out.println(arrays[i]); } System.out.println("==========="); //計算全部元素的和 int sum = 0; for (int i = 0; i < arrays.length; i++) { sum = sum+ arrays[i]; } System.out.println("總和爲 "+sum); System.out.println("==========="); //找出最大值 int max= arrays[0]; for (int i = 1; i < arrays.length; i++) { if(arrays[i]>arrays[0]); max = arrays[i]; } System.out.println("max= "+max); System.out.println("============"); int[]reverse = reverse(arrays); System.out.println(); } //反轉數組 public static int [] reverse(int[] arrays){ int[] result = new int [arrays.length];//從新找一個新的數組 //反轉的操做 for (int i = 0,j= arrays.length-1; i < arrays.length; i++,j--) { result[j]= arrays[i];//把反轉的數放入新的數組中 } return result; } }
二維數組就是一個特殊的一維數組,其每個元素都是一個一維數組。
元素類型【】【】數組變量;
首先聲明與分配內存的格式以下
數據類型 數組名【】【】=null;
數組名 = new 數據類型【行的個數】【列的個數】
動態初始化:
int a 【】【】= new int【2】【5】;
靜態初始化:
數據類型 數組名【】【】= {{第0行初始值},{第一行初始值},....{第n行初始值}};
int intArray【】【】 = {{1,2},{2,3},{3,4,5}}
簡單使用代碼示例:
package Array; //打印數組元素 public class arrayDemo03 { public static void main(String[] args) { int[][] array= {{1,2},{2,3},{3,4},{4,5}};//定義一個二維數組 /* 1,2 array[0]-->array[0][0]=1,array[0][1]=2; 2,3 array[1]-->array[1][0]=2,array[1][1]=3; 3,4 array[2]-->array[2][0]=3,array[2][1]=4; 4,5 array[3]-->array[3][0]=4,array[3][1]=5 for (int i = 0; i < array.length; i++) { for (int j = 0; j < array[i].length; j++) { System.out.println(array[i][j]); } } } }
二維數組的引用格式以下
arrayName【index】【index】
對二維數組中的每一個元素引用時
arrayName【index1】【index2】
如:num【1】【2】;
畫圖分析二維數組:
詳細可見視頻狂神說java