zoukankan      html  css  js  c++  java
  • JAVA数组及其内存控制

    1. JAVA数组为静态,即一旦初始化后,其长度是不可改变的。

    2. 数组变量是引用变量,并不是数组对象本身。

    3. 两种初始化方式:

      动态初始化:指定数组的长度,初始值自动生成。

      静态初始化:指定初始值,长度自动生成。

    4. JAVA中,引用变量本身无需初始化,引用变量所引用的对象是需要初始化的。

    5. 所有局部变量(基本类型变量、引用类型变量)都存于所在方法的栈内存中,引用变量所引用的实际对象(数组对象、Java对象)存放于堆内存中。

      =》引用变量不一定存放于栈内存中,eg,3维数组

        *易混淆:引用变量何时指代其本省,何时指代堆内存中其引用的对象?

          未调用其方法或属性,指代其本身;反之,指代堆内存中其引用的对象

    6. 基本类型数组:每一个元素都是值类型(基本类型)

      引用类型数组:每一个元素还是引用类型,还需要指向实际对象

    7. Java只允许通过引用变量访问堆内存中的数组对象,不允许直接访问堆内存中的数组对象

    8. 多维数组按一维数组进行初始化,从最左端开始初始化,每一元素按照引用类型,进一步初始化

      eg:

    int[][] a;
    a = new int[4][];
    a[0] = new int[2];

          

  • 相关阅读:
    牛客练习赛9
    Good Bye 2017
    Wannafly挑战赛6
    TOJ1840: Jack Straws 判断两线段相交+并查集
    Codeforces Round #452 (Div. 2)
    TOJ4505: KOSARE
    Codeforces Round #451 (Div. 2)
    牛客练习赛8
    TOJ4168: Same Digits
    TOJ4483: Common Digit Pairs
  • 原文地址:https://www.cnblogs.com/forstudy/p/2544314.html
Copyright © 2011-2022 走看看