當前位置:成語大全網 - 書法字典 - java中數組的特點是什麽?數組和簡單變量的聲明和初始化方法有什麽區別?

java中數組的特點是什麽?數組和簡單變量的聲明和初始化方法有什麽區別?

在java語言中,數組是最簡單的復合數據類型。數組是有序數據的集合,數組中的每個元素都具有相同的數據類型。您可以使用統壹的數組名稱和下標來唯壹標識數組中的元素。數組有壹維數組和多維數組。

★壹維數組

1.壹維數組的定義

type array name【】;

類型可以是Java中的任何數據類型,包括簡單類型和復合類型。

例如:

int int array【】;

date date array【】;

2.壹維數組的初始化

靜態初始化

int intArray【】= { 1,2,3,4 };

string string array【】= {“ABC“、“How“、“you“};

動態初始化

1)簡單類型的數組

int int array【】;

int array = new int【5】;

2)復合類型數組

string string ray【】;

String stringArray =新字符串【3】;/*為數組中的每個元素打開壹個引用。

空格(32位)*/

String array【0】=新字符串(“How“);//為第壹個數組元素騰出空間。

String array【1】=新字符串(“are“);//為第二個數組元素騰出空間。

String array【2】=新字符串(“you“);//為第三個數組元素騰出空間。

3.壹維數組元素的引用

數組元素的引用如下:

arrayName【索引】

Index是數組下標,可以是整數常量,也可以是表達式,下標從0開始。每個數組都有壹個指示其長度的屬性length,例如intArray.length指示數組intArray的長度。

★多維數組

在Java語言中,多維數組被視為數組的數組。

1.二維數組的定義

type array name【】【】;

type【】【】array name;

2.二維數組的初始化

靜態初始化

int intArray【】【】= { { 1,2},{2,3},{3,4,5 } };

在Java語言中,由於二維數組被視為數組的數組,因此數組空間不是連續分配的,因此不要求二維數組的每個維度都具有相同的大小。

動態初始化

1)以下列格式直接為每個維度分配空間:

array name = new type【array length 1】【array length 2】;

int a【】【】= new int【2】【3】;

2)從最高維度開始,分別為每個維度分配空間:

array name = new type【array length 1】【】;

array name【0】=新類型【array length 20】;

array name【1】=新類型【array length 21】;

array name【array length 1-1】=新類型【array length 2n】;

3)示例:

二維簡單數據類型數組的動態初始化如下所示,

int a【】【】= new int【2】【】;

a【0】= new int【3】;

a【1】= new int【5】;

對於二維復合數據類型的數組,必須首先為最高維度分配引用空間,然後依次為低維度分配空間。

此外,必須為每個數組元素單獨分配空間。

例如:

String s【】【】=新字符串【2】【】;

s【0】=新字符串【2】;//為最高維度分配參考空間。

s【1】=新字符串【2】;//為最高維度分配參考空間。

s【0】【0】=新字符串(“Good“);//分別為每個數組元素分配空間。

s【0】【1】=新字符串(“Luck“);//分別為每個數組元素分配空間。

s【1】【0】=新字符串(“to“);//分別為每個數組元素分配空間。

s【1】【1】=新字符串(“You“);//分別為每個數組元素分配空間。

3.二維數組元素的引用

對於二維數組中的每個元素,引用方法為:array name【index 1】【index 2】。

例如:num【1】【0】;

4.二維數組示例:

示例2.2兩個矩陣相乘

公共類矩陣乘法{

公共靜態void main(String args【】){

int i,j,k;

int a【】【】= new int【2】【3】;//動態初始化二維數組

int b【】【】= { { 1,5,2,8},{5,9,10,-3},{2,7,-5,-18 } };//靜態初始化

二維數組

int c【】【】= new int【2】【4】;//動態初始化二維數組

for(I = 0;我& lt2;i++)

for(j = 0;j & lt3 ;j++)

a【I】【j】=(I+1)* *

for(I = 0;我& lt2;i++){

for(j = 0;j & lt4;j++){

c【I】【j】= 0;

for(k = 0;k & lt3;k++)

c【I】【j】+= a【I】【k】* b【k】【j】;

}

}

system . out . println(“* * * * * * Matrix C * * * * * * * *”);//打印矩陣C標簽

for(I = 0;我& lt2;i++){

for(j = 0;j & lt4;j++)

system . out . println(c【I】【j】+““);

system . out . println();

}

}

}