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;
    }
}

java array的更多相关文章

  1. 【翻译】Java Array的排名前十方法(Top 10 Methods for Java Arrays)

    这里列举了Java Array 的前十的方法.他们在stackoverflow最大投票的问题. The following are top 10 methods for Java Array. The ...

  2. Java Array 方法和使用

    1.Arrays.toString():数组转字符串 格式:Arrays.toString(数组名) 将数组转化成字符串,此时输出的结果是字符串类型. import java.util.Arrays; ...

  3. Java Array数组 遍历 四种方式(包含 Lambda 表达式遍历)

    示例代码如下: package com.miracle.luna.lambda; import java.util.Arrays; /** * @Author Miracle Luna * @Date ...

  4. Java Array数组使用详解

    本文主要讲解java中array数组使用,包含堆.栈内存分配及区别 1.动态初始化 package myArray; /* * 堆:存储的是new出来的东西,实体,对象 * A 每个对象都有地址值 * ...

  5. java array to list

    背景 想把数组转为list,使用list的判断元素是否存在的方法,结果发现一个坑,int类型的数组失败了 步骤 public static void main(String[] args) { int ...

  6. Java Array 常见报错ArrayIndexOutOfBoundsException NullPointerException

    本文介绍array报错, 数组索引越界异常: ArrayIndexOutOfBoundsException, 空指针:NullPointerException package myArray; /* ...

  7. JAVA array,map 转 json 字符串

    public class User { private String username; private String password; public String getUsername() { ...

  8. Java Array、List、Set互相转化

    https://blog.csdn.net/u014532901/article/details/78820124

  9. Java Array二维数组使用

    二维数组:元素为一维数组的数组 package myArray.arrayarray; /* *二维数组:元素为一维数组的数组 * * 定义格式: * A:数组类型[][] 数组名: (推荐用法) * ...

随机推荐

  1. 洛谷 P1014 Cantor表【蛇皮矩阵/找规律/模拟】

    题目描述 现代数学的著名证明之一是Georg Cantor证明了有理数是可枚举的.他是用下面这一张表来证明这一命题的: 1/1 1/2 1/3 1/4 1/5 … 2/1 2/2 2/3 2/4 … ...

  2. 详解BitMap算法

    所谓的BitMap就是用一个bit位来标记某个元素所对应的value,而key即是该元素,由于BitMap使用了bit位来存储数据,因此可以大大节省存储空间.   1. 基本思想 首先用一个简单的例子 ...

  3. Sharing Cookies --AtCoder

    题目描述 Snuke is giving cookies to his three goats.He has two cookie tins. One contains A cookies, and ...

  4. CSS定位与布局:普通流

    CSS定位与布局属于CSS的基础,也是CSS布局影响很大的一部分,具体主要包括三种定位与布局机制( Positioning schemes):普通流,浮动,绝对定位. 其实除了这三种之外,还有一些定位 ...

  5. Aizu 2300 Calender Colors dfs

    原题链接:http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2300 题意: 给你一个图,让你生成一个完全子图.使得这个子图中每个点的最 ...

  6. jzyzOJ 1658【bzoj1798改编】

    #include<iostream> #include<cstring> #include<cstdio> #include<ctime> #inclu ...

  7. Scala之Future

    一.简介 Future提供了一套高效便捷的非阻塞并行操作管理方案.其基本思想很简单,所谓Future,指的是一类占位符对象,用于指代某些尚未完成的计算的结果.一般来说,由Future指代的计算都是并行 ...

  8. Java数据结构-线性表之静态链表

    静态链表的定义: 节点由一个一维数组和一个指针域组成,数组用来存放数据元素,而指针域里面的指针(又称游标)用来指向下一个节点的数组下标. 这种链表称之为静态链表. 链表中的数组第一个和最后一个位置须要 ...

  9. vue中使用key管理可复用的元素

    1.概述 Vue 会尽可能高效地渲染元素,通常会复用已有元素而不是从头开始渲染. key解决上述问题之外的情景:这两个元素是完全独立的,不要复用它们. 2.示例 <!DOCTYPE html&g ...

  10. [译]RabbitMQ教程C#版 - “Hello World”

    [译]RabbitMQ教程C#版 - “Hello World”   先决条件本教程假定RabbitMQ已经安装,并运行在localhost标准端口(5672).如果你使用不同的主机.端口或证书,则需 ...