陣列的基礎運用

2021-08-18 04:21:56 字數 1892 閱讀 6428

陣列是同一種資料型別的集合,是乙個長度固定的持有資料型別。陣列也是引用型別(包括類,介面和陣列)中的一種,陣列內的每乙個資料稱為乙個元素,值為陣列的變數叫做引用。

陣列能夠將資料進行分組,進行分類後整理有利於資料的操作。

陣列的使用必須要進行宣告和初始化。

陣列內只能同時存放一種資料型別的陣列;

ø  可以是基本資料型別(byte,short, int, long, float, double, char, boolean)

ø  也可以是引用資料型別 (string等) 

陣列是乙個物件,成員是陣列內的成員元素和陣列的長度等陣列的屬性;

宣告陣列變數,並不是建立了乙個陣列物件,而是建立了乙個指標一樣的資料引用。使用new建立陣列例項,才會開始分配記憶體空間,才是建立了乙個陣列物件。陣列物件本身儲存在堆中,而陣列的引用(堆中的記憶體位址)則儲存在棧中。

陣列記憶體分配過程

宣告陣列的形式:

注意:陣列宣告的時候,不能夠設定長度。所以int arr[1]; 和 int[2] arr;都是非法的。

之所以這樣設定初始化宣告是因為前面宣告的變數並不是陣列例項,而是例項的乙個引用位址。關於陣列的長度及其元素的個數是由後方的陣列例項決定的.

一維陣列的初始化方式有三種:

方式一:

元素型別 陣列名 = new 元素型別[元素個數(即陣列的長度)];

e.g.  int arr = new int[5];

這種方式下,會為陣列內的每個元素賦予其資料型別的預設值:

arr: (0x123):值如下

方式二:

元素型別 陣列名 = new 元素型別;

e.g.  int arr = new int;

方式三:(是對方式二的簡化)

元素型別 陣列名 = ;

e.g.  int arr =  ;

對於陣列中的三個「空」的理解:

1)  stringa;  //未初始化, 僅僅宣告了變數,未建立例項,未分配記憶體

2)  string a = 「」;or string a = new string; //建立了例項,並分配了記憶體,其值     為「」;

3)     string a = null;  //已初始化,當未指向任何物件,故引用時會報空指標異常

public static void printarray(inta)

return max;

}

//求最小值

public static int min(inta),,…. };

e.g. int arr =  ,,};// 指定陣列內陣列的具體元素值

public static void printaarry(int arr)

}return max;

}

//求最小值        

public static int min(int arr)

for(inti=0;i<=length-1;i++){

arr[i][0]= 1;

arr[i][i]= 1;

if(i>=2){

for(intj=1; j

陣列的運用

int main printf p n a printf p n a 1 printf d n sizeof a a中a表示整型陣列的首元素位址,a表示首元素,整型陣列,乙個元素佔4個位元組。printf p n a printf p n a 1 printf d n sizeof a a表示整個陣...

陣列的運用

1.在js中陣列的定義方式有兩種 var a 1,2,3,4 var b new array 1,2,3,4 當兩個陣列中只有乙個值的時候是有區別的 var a 4 此陣列只有乙個元素,為 4 var b new arr 4 此陣列有4個元素 2.通過命令對陣列的長度進行修改 例如 var a 1,...

反射的基礎運用

1.獲取class物件的三種方法 1 public class demoreflect catch classnotfoundexception e 15 16 2.獲取class物件的資訊 1 public class getclassinfo 11 3.獲得類物件的構造方法並用構造方法獲得例項物...