天天看點

Java數組(Array)_基本概念_記憶體分析

數組是相同類型資料的有序集合

數組描述的是相同類型的若幹個資料,按照一定的先後次序排列組合而成。其中,每一個資料稱作數組元素,每個數組元素可以通過一個下标來通路它們。

數組有三個特點:

1、其長度是确定的。數組一旦被建立,它的大小就是不可以改變的。

2、其元素必須是相同的類型,不允許出現混合類型;

3、數組中的元素可以是任何資料類型,包括基本類型和引用類型。

例子:

package com.ws.array;

public class test01 {

	public static void main(String[] args) {
		int a[]=new int[3];
		a[0]=28;
		a[1]=03;
		a[2]=78;
		
		hero[] heros=new hero[2];
		heros[0]=new hero("大法師");
		
		System.out.println(heros[0].name);
		for (int i=0;i<a.length;i++)
		{
			System.out.println(a[i]);
		}
		
	}
}

class hero {
	String name;

	public hero(String name) {
		super();
		this.name = name;
	}
	
}
           

輸出:

大法師
28
3
78
           

記憶體分析:

Java數組(Array)_基本概念_記憶體分析

隻要知道數組是對象,記憶體分析圖就很容易畫出來,和上文的畫法一樣,棧區存放變量,堆區存放對象和方法區。a[3]是基本類型,直接建立對象,配置設定位址,将數值放在配置設定的位址即可。hero是類,先在方法區加載源代碼、靜态變量和方法以及常量,根據加載的源代碼建立出hero對象,對象都是通過位址進行引用的,是以是引用類型。

數組是Java的三種引用類型之一,其它兩種前文已經介紹過了,是類和接口。