`
cakin24
  • 浏览: 1368157 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

三张內存变化图揭秘基本类型数组的初始化

    博客分类:
  • java
阅读更多

一 代码示例

public class PrimitiveArrayTest
{
	public static void main(String[] args)
	{
		// 定义一个int[]类型的数组变量
		int[] iArr;  //a
		// 动态初始化数组,数组长度为5
		iArr = new int[5];  //b
		// 采用循环方式为每个数组元素赋值。
		for (int i = 0; i <iArr.length ; i++ )  //c
		{
			iArr[i] = i + 10;  
			System.out.println(iArr[i]);
		}
	}
}

二 运行结果
10
11
12
13
14

三 结果分析



 

 

 
图一是a段代码执行后的结果
图二是b段代码执行后的结果
图三是c段代码执行后的结果

  • 大小: 11.9 KB
  • 大小: 21.8 KB
  • 大小: 21.7 KB
分享到:
评论

相关推荐

    内存初始化

    对于初学者而言,理解并掌握内存初始化的基本原理和实践技巧,是深入学习ARM9乃至更广泛嵌入式系统开发的关键步骤之一。通过练习编写和调试不同的初始化脚本,新手开发者可以逐步提升自己的技能水平,最终能够在复杂...

    VB自定义数组类

    1. **动态类型(Genericity)**:由于VB支持面向对象编程,这个自定义数组类很可能实现了泛型,这意味着它能存储几乎任何类型的元素,无论是基本数据类型(如Integer, String, Double)还是自定义对象。这通过使用VB...

    数组和集合

    数组声明后必须初始化,使用new关键字分配内存空间,并且指定数组长度。数组的初始化可以发生在声明时,也可以在之后使用花括号{}赋值。数组的元素通过下标(索引)来访问,下标从0开始。 数组作为一种特殊的类,每...

    Java数组练习题(带答案).doc

    - **知识点**: 数组初始化通常包含三个步骤:声明数组、创建数组实例、以及初始化数组元素。 11. **数组下标访问超出索引范围时抛出数组越界异常** - **知识点**: 如果尝试访问一个不存在的数组元素(即索引超出...

    c++结构体的初始化和赋值1

    当结构体中包含数组成员时,初始化规则略有变化。如果数组位于结构体的开头,并且只提供了部分初始值,那么未指定的数组元素和后续成员将使用默认值初始化。例如,考虑结构体Y: ```cpp struct Y { int i[2]; ...

    数学数组PPT学习教案.pptx

    打印`a[1][1]`、`a[2][1]`和`a[3][1]`的结果是5、0、0,因为二维数组的元素数量是由初始化时提供的元素数量决定的,对于`a[3][1]`,由于没有提供值,所以它实际上是未定义的,打印出0是因为内存中的随机值。...

    c++动态数组申请(包括一维,二维的)

    这里的`()`表示使用默认构造函数初始化数组,对于基本类型如int,这意味着所有元素被初始化为0。 3. 释放内存:使用完动态数组后,记得使用`delete[]`释放内存,防止内存泄漏: ```cpp delete[] arr; ``` 二、二...

    动态数组的一个小例子

    `initArray()`函数初始化这个结构体,`insert()`函数负责在数组末尾插入新的元素,如果当前容量不足,会通过`realloc()`进行扩展。`clearArray()`函数则释放动态分配的内存,重置数组状态。`countDuplicates()`函数...

    第03讲___JAVA数组.ppt

    数组初始化时,所有元素会根据其数据类型得到默认值,如数值型为0,布尔型为false,字符型为0的字符,对象为null。数组的元素通过索引来访问,索引从0开始,合法索引范围是0到数组长度减1。可以使用`length`属性获取...

    用C语言创建动态数组

    1. **初始化动态数组**:首先需要分配一段内存空间作为数组的初始空间。通常会先设定一个较小的初始大小,例如128个元素。 ```c int current_element = 0; // 当前元素数量 int total_element = 128; // 总元素...

    C语言中动态数组操作实践

    `calloc()`与`malloc()`类似,但同时也负责初始化分配的内存为零。对于数组,这可能是有用的,因为它允许我们创建已清零的数组: ```c int *arr = (int*)calloc(n, sizeof(int)); ``` 3. `realloc()`函数: 当初始...

    易语言重定义多维数组

    3. 需要时,动态调整数组大小,可能涉及到重新分配内存。 4. 使用`pInt`和`pInts`指针遍历数组,进行读写操作。 5. 当需要移动数据时,调用`RtlCopyMemory`或`RtlMoveMemory`函数,确保数据的安全转移。 6. 最后,...

    数据结构多维数组课程设计

    - 定义整型多维数组类型(以3维为例)。 - 下标变量赋值,并进行下标范围检查。 - 同类型数组间赋值。 - 子数组赋值操作。 - 确定数组的大小。 #### 二、设计方案 ##### 1. 存储结构设计 为了实现上述功能,...

    C语言动态分配二维数组

    首先为行指针数组分配内存,然后为整个二维数组分配内存,并初始化所有元素为0,最后设置每一行的起始地址。 通过以上内容,我们可以看到在C语言中动态分配二维数组的方法和步骤。正确使用这些技术可以帮助我们在...

    Java对象的容纳 数组。容器

    - 动态初始化数组:`myObj1 = new MyObj[]{new MyObj(), new MyObj(), new MyObj(), new MyObj()};` - 通过函数返回数组:`MyObj[] myObj5 = getMyObj(3);` 2. **使用数组**: - 访问和修改数组元素:`myObj5[i]...

    动态二维数组 c#编程

    - 内存效率:相比于静态数组,动态数组可能会浪费一些内存,因为需要额外存储行和列的信息。 - 性能:访问速度较静态数组慢,尤其是当数据量大时,因为需要多层指针跳转。 5. 应用场景: 动态二维数组广泛应用于...

    用Java动态数组扩充实现线性表

    在计算机科学中,线性表是一种基本的数据结构,它由若干个相同类型的元素按照特定顺序排列组成。在Java中,我们通常使用数组或链表来实现线性表。本话题聚焦于使用动态数组来实现线性表,这是一种常见的数据结构实现...

    linux 内存管理 start_kernel

    4. 内存页面结构初始化(page_address_init):内存页面是内存管理的基本单位,该函数负责初始化页面地址映射,以便内核可以正确地管理物理内存。 5. 内核内存分配(kmem_cache_init):这个函数初始化内核内存池,...

    VBA数组基础学习.txt

    - 初始化时可以指定数组的类型,如整型、字符串型等。 #### 三、数组示例解析 1. **一维数组:** - **初始化与赋值:** ```vba Sub Example1() Dim arr1() As Variant arr1 = Array("wise", "rose", "С", ...

    js 数组的变化

    JavaScript数组不仅可以包含基本数据类型(如字符串、数字、布尔值),还可以包含复杂数据类型,如对象和其他数组,这体现了JS中的灵活性。在这个“js数组的变化”主题中,我们将深入探讨数组的一些关键特性和它们与...

Global site tag (gtag.js) - Google Analytics