一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - 初識JAVA數組

初識JAVA數組

2019-11-27 14:40hebedich JAVA教程

java語言中,數組是一種最簡單的復合數據類型。數組是有序數據的集合,數組中的每個元素具有相同的數據類型,可以用一個統一的數組名和下標來唯一地確定數組中的元素。數組有一維數組和多維數組。

1. 一維數組

1.1 一維數組的定義

?
1
2
type arrayName[];
type[] arrayName;

當中類型(type)能夠為Java中隨意的數據類型,包含簡單類型組合類型,數組名arrayName為一個合法的標識符,[]指明該變量是一個數組類型變量。

另外一種形式對C++開發人員可能認為非常奇怪,只是對JAVA或C#這種開發語言來說,另外一種形式可能更直觀,由于這里定義的僅僅是個變量而已,系統并未對事實上例化,僅僅需指明變量的類型就可以,也不需在[]指定數組大小。(第一種形式是不是僅僅是為了兼容曾經的習慣,畢竟C語言的影響太大了?)

比如:

?
1
2
3
4
5
int intArray[];
聲明了一個整型數組,數組中的每一個元素為整型數據。與C、C++不同,Java在數組的定義中并不為數組元素分配內存,因此[]中不用指出數組中元素個數,即數組長度,并且對于如上定義的一個數組是不能訪問它的不論什么元素的。我們必須為它分配內存空間,這時要用到運算符new,其格式例如以下:
arrayName=new type[arraySize];
當中,arraySize指明數組的長度。如:
intArray=new int[3];

為一個整型數組分配3個int型整數所占領的內存空間。

通常,這兩部分能夠合在一起,格式例如以下:

?
1
2
3
type arrayName=new type[arraySize];
比如:
int intArray=new int[3];
1.2 一維數組元素的引用

定義了一個數組,并用運算符new為它分配了內存空間后,就能夠引用數組中的每個元素了。數組元素的引用方式為:
 
arrayName[index]
當中:index為數組下標,它能夠為整型常數或表達式。如a[3],b[i](i為整型),c[6*I]等。下標 從0開始,一直到數組的長度減1。對于上面樣例中的in-tArray數來說,它有3個元素,分別為:
intArray[0],intArray[1],intArray[2]。注意:沒有intArray[3]。
 
另外,與C、C++中不同,Java對數組元素要進行越界檢查以保證安全性。同一時候,對于每一個數組都有一個屬性length指明它的長度,比如:intArray.length指明數組intArray的長度。
 

?
1
2
3
4
5
6
7
8
9
10
public class ArrayTest{
  public static void main(String args[]){
    int i;
    int a[]=new int[5];
    for(i=0;i<5;i++)
      a[i]=i;
    for(i=a.length-1;i>=0;i--)
      System.out.println("a["+i+"]="+a[i]);
  }
}

執行結果例如以下:

?
1
2
3
4
5
6
C:/>java ArrayTest
a[4]=4
a[3]=3
a[2]=2
a[1]=1
a[0]=0

該程序對數組中的每一個元素賦值,然后按逆序輸出。
 
1.3 一維數組的初始化

對數組元素能夠依照上述的樣例進行賦值。也能夠在定義數組的同一時候進行初始化。
比如:
int a[]={1,2,3,4,5};
用逗號(,)分隔數組的各個元素,系統自己主動為數組分配一定空間。
 
與C中不同,這時Java不要求數組為靜態(static),事實上這里的變量相似C中的指針,所以將其作為返回值給其他函數使用,仍然是有效的,在C中將局部變量返回給調用函數繼續使用是剛開始學習的人非常easy犯的錯誤。
 
2. 多維數組

與C、C++一樣,Java中多維數組被看作數組的數組。比如二維數組為一個特殊的一維數組,其每一個元素又是一個一維數組。以下我們主要以二維數為例來進行說明,高維的情況是相似的。

2.1 二維數組的定義

二維數組的定義方式為:

type arrayName[][];
比如:
int intArray[][];

與一維數組一樣,這時對數組元素也沒有分配內存空間,同要使用運算符new來分配內存,然后才干夠訪問每一個元素。
對高維數組來說,分配內存空間有以下幾種方法:

1. 直接為每一維分配空間,如:
int a[][]=new int[2][3];

2. 從最高維開始,分別為每一維分配空間,如:

?
1
2
3
int a[][]=new int[2][];
a[0]=new int[3];
a[1]=new int[3];

完畢1中同樣的功能。這一點與C、C++是不同的,在C、C++中必須一次指明每一維的長度。

2.2 二維數組元素的引用

對二維數組中每一個元素,引用方式為:arrayName[index1][index2] 當中index1、index2為下標,可為整型常數或表達式,如a[2][3]等,相同,每一維的下標都從0開始。

2.3 二維數組的初始化

有兩種方式:
1. 直接對每一個元素進行賦值。
2. 在定義數組的同一時候進行初始化。
 
如:int a[][]={{2,3},{1,5},{3,4}};
定義了一個3×2的數組,并對每一個元素賦值。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 午夜福到在线2019 | 胸奶好大好紧好湿好爽 | 国产精品视频第一区二区 | 男人天堂色男人 | 明星裸乳照无奶罩 | 91探花在线观看 | 黑人巨大初黑人解禁作品 | 成人操| 全彩调教侵犯h本子全彩妖气he | 女人叉开腿让男人桶 | 4hc44四虎www在线影院男同 | 动漫美女人物被黄漫在线看 | 亚洲第一色网 | 亚洲国产精品自在现线让你爽 | 欧美日韩不卡视频 | 国产成人精品视频一区 | 极品久久 | 亚洲国产精品福利片在线观看 | 18young第一次| 成年私人影院免费视频网站 | 国产一成人精品福利网站 | 欧美艳星kagneyiynn高清 | 性欧美videosex18嫩 | 午夜dj影院在线视频观看完整 | 精品一卡2卡3卡4卡5卡亚洲 | 天码毛片一区二区三区入口 | 双性鞭蒂软汁淋漓 | 久久久免费观成人影院 | 久久国产精品永久免费网站 | 亚洲欧美国产精品完整版 | 国产一区二区在线免费观看 | 日本成人黄色网址 | 操儿子 | 国产一区二区免费不卡在线播放 | 国色天香论坛社区在线视频 | 91精品国产亚洲爽啪在线影院 | 亚洲成人国产精品 | 99综合在线 | 娇妻被健身教练挺进小说阅读 | 欧美又硬又粗又长又大 | 日韩毛片基地一区二区三区 |