byte数组初始化_软件开发过程之数组初始化

50a5b0afef0c0f49f7d2e767a3f61f51.png

开发就像美食

第1课 数组与内存控制

Java 数组并不是什么很难的知识, 如果单从用法的角度来看, 数组的用法并不难, 只,很多程序员虽然一直使用 Java数组,但他们往往对Java数组的内存分配把握并不准确。本室正是为了弥补程序员的这部分基本功而做的深入探讨。

本课将会深入探讨Java 数组的静态特征。 使用 Java 数组之前必须先对数组对象进行初女化。 当数组的所有元素都被分配了合适的内存空间, 并指定了初始值时, 数组初始化完成.程序以后将不能重新改变数组对象在内存中的位置和大小。 从用法角度来看, 数组元素相兰于普通变量, 程序既可把数组元素的值赋给普通变量, 也可把普通变量的值赋给数组元素。本课还将深入分析多维数组的实质, 深入讲解多维数组和一维数组之间的关联, 并通逗程序示范如何将一维数组扩展成多维数组。

1.1 数组初始化

数组是大多数编程语言都提供的一种复合结构, 如果程序需要多个类型相同的变量时,就可以考虑定 义一个数组。 Java 语言的数组变量是引用类型的变量, 因此具有 Java 独有的特性

1.1.1 Java数组是静态的

Java 语言是典型的静态语言, 因此Java 的数组是静态的, 即当数组被初始化之后, 该数组的长度是不可变的。Java 程序中的数组必须经初始化才可使用。 所谓初始化, 就是为数组对象的元素分配内存空间, 并为每个数组元素指定初始值.

数组的初始化有以下两种方式。

静态初始 化: 初始化时由程序员显式 指定每个数组元素的初始值, 由系统决定数组长度

动态初始 化: 初始 化时程序员 只指定数组长度, 由系统为数组元素分配初始值.

不管采用哪种方式初始化 Java 数组,一旦初始化完成,该数组的长度就不可改变,Java语言允许通过数组的length属性来访问数组的长度。示例如下.

9ad2ee9900af601e0fa9d68d707908a5.png

企业软件定制

cd201c0e0093d9b3207b9bc9670b83a5.png

案例

上面程序中的粗体字代码声明并初始化了 3个数组。 这3 个数组的长度将会始终不变,

程序输出3个数组的长度依次为4,3,5.前面已经指出,Java语言的数组变量是引用类型的变量,books,names,strArr这3个变量以及各自引用的数组在内存中的分配如图1.1所示。从图 1.1 中可以看出, 对于静态初始化方式而言, 程序员无需指定数组长度, 指定该数组的数组元素, 由系统来决定该数组的长度即可. 例如 books 数组, 为它指定了 4个数组元素,那它的长度就是4;对于names数组,为它指定了3个元素,那它的长度就是3。

bc2179bcca45e2108fe896dfb97918eb.png

企业软件开发定制

执行动态初始化时,程序员只需指定数组的长度, 即为每个数组元素指定所需的内存空

间, 系统将负责为这些数组元素分配初始值, 指定初 始值时, 系统将按 如下规则分配初始值,

数组元素的类型是基本类型中的整数类型(byte,short,int和long),则数组元素的值是0.

数组元素的类型是基本类型中的浮点类型 (float, double), 则数组元素的值是0.0.

数组元素的类型是基本类型中的字符类型 (char), 则数组元素的值是"u0000'.

数组元素的类型是基本类型中的布尔类型 (boolean), 则数组元素的值是false.

数组元素的类型是引用类型 (类, 接口和数组), 则数组元素的值是null.

不要同时使用静态初始化和动态初始化, 也就是说, 不要在进行数组初始化时, 既指

定数组的长度, 也为每个数组元素分配初始值.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值