首页 > 代码库 > Java中数组的内存分配

Java中数组的内存分配

Java里数组也是引用类型,故分配在堆里。

例如:

int[] a = new int[5];for(int i=0;i<a.length;i++){    int[i] = i;}

内存分配图如下:

 

上面是基本类型的数组,下面看引用类型数组的内存分配。先看引用类型的定义:

class T {    public int id;    public String name;    public int age;}public class Test {    public static void main(String[] args) {           T[] t = new T[3];           t[0] = new T(1,"张三",28);           t[1] = new T(2,"李四",21);           t[2] = new T(3,"王五",45);    }}        

内存分配如下图:

 可以看到,引用类型的数组中,存放的实际是每个对象的引用。

Java中数组的内存分配