zoukankan      html  css  js  c++  java
  • java分配内存空间

    分配内存空间

    数组名=new 数据类型[数组长度];

    new关键字用来实现为数组或对象分配内存 (堆内存)

    数组具有固定的长度。获取数组的长度: 数组名.length

    定义数组+分配内存空间

    数据类型[]数组名=new 数据类型[数组长度];

    定义数组时不指定长度,分配空间时指定数组长度;如:String cities[] = new String[6];

    数组元素:

    数组名[下标值];

    数组下标从0开始  scores[0]=75;

    数组的内存分配  栈内存和堆内存

    如定义一个数组 int[]scores将在栈内存中为scores 分配内存空间,其值是一个不确定的值。

    当执行语句scores=new int[5]时,将在堆内存分配连续5个空间,每个空间4个字节,用于存放整型数据,其初始值为0,然后将该段空间首地址,也就是第一个元素的地址,比如0*3000,赋给scores变量。该地址相当于一个指针,指向堆内存中分配的空间。此时堆内存中分配的5个空间可以分别使用scores[0],一直到scores[4]来表示。当执行四个赋值语句时,分别用指定值填充到对应元素位置。如果此时将null值赋给scores时,scores变量将不再指向任何位置,此时堆内存中分配的空间就变成了垃圾,由垃圾回收器在某一时间进行回收。

    在方法中定义的变量,包括基本数据类型变量和引用数据类型变量,都将在栈内存中分配空间,当超过变量作用范围后,自动回收

    我的总结:初始化=定义数组+分配空间+赋值

  • 相关阅读:
    HDU 2196 Computer
    HDU 1520 Anniversary party
    POJ 1217 FOUR QUARTERS
    POJ 2184 Cow Exhibition
    HDU 2639 Bone Collector II
    POJ 3181 Dollar Dayz
    POJ 1787 Charlie's Change
    POJ 2063 Investment
    HDU 1114 Piggy-Bank
    Lca hdu 2874 Connections between cities
  • 原文地址:https://www.cnblogs.com/fanweisheng/p/11131018.html
Copyright © 2011-2022 走看看