« 上一篇下一篇 »

数组的初始化

在C语言里,初始化数组是一件既常容易出错又冗长乏味的事。C++用所谓的“集合初始化”大大增强了这个过程的安全性。由于Java的一切都是对象,因而它没有C++的“集合”。它也有数组,并且提供了数组的初始化。数组只是一个列在同一个标识符名下的简单序列,这个序列既可以是primitive的,也可以是同一种类型的对象的。数组是通过由方括号括起来的数组下表来定义和使用的。

要定义一个数组,只要直接在类型的名字后面加上一对空的方括号就行了。你也可以将方括号放到标识符的后面,这样做的意思是相同的。这种写法是C和C++程序员们所预想的。但是前一种写法可能更好一些,因为它在说这个类型是“一个int型的数组”。

编译器不允许你告诉它数组有多大。这让我们又回到了reference这个话题了。现在你所得到的只是一个数组的reference,而这个数组的内存还没分配。要为这个数组创建存储空间,你就必须进行初始化。对数组来说,初始化可以在程序的任何地方进行,但是你也可以用一种特殊的初始化语句,让它在创建数组的时候进行初始化。这种特殊的初始化就是用一对花括号把值括起来。在这种情况下,内存分配就会由编译器来处理了。

« 上一篇下一篇 »