java array

1 array变量

Type[] array_virable_name;

2 array对象

2.1 new

Type[] array_virable_name = new Type[NUM];

2.2 initializer

{1,2,3,4}

3 array对象存放的内存

无论是new出的数组对象还是通过初始化器得到的数组对象的内存都是在堆上。

3.1 new出的对象

这个对象的内存是在JVM的堆上面的。

3.2 initializer出的对象

也是在JVM的堆上存放的,不是在栈上。通过下面的例子可以看出:

import java.lang.System;

class Main {


    public static void main(String args[]) {
        int[] myArray = getInitializerArray();
        for(int i = 0; i < myArray.length; i++) {
            System.out.println("the current element is " +  myArray[i]);
        }
    }


    // check if Array Initializer in heap or stack
    private static int[] getInitializerArray() {
        int[] array = {1, 2, 3, 4};
        return array;
    }
}

原文地址:https://www.cnblogs.com/hustdc/p/6478919.html