SCJP认证 1.5.4(3) 变量声明

数组声明

在Java中,数组是对象,它存储同一类型的多个变量,uozhe同一类型的全部子类的变量。数组能够保存基本类型或对象引用,但是数组本身总是堆中的对象,及时数组被声明为用以保存基本类型的元素也是如此。换句话说,没有基本数组,但你能够建立这样的数组。

对于考试,需要了解3件事情:

  • 怎样获得数组引用变量(声明) 。
  • 怎样建立数组对象(构造) 。
  • 怎样用元素填充数组(初始化) 。

 就本节而言,你只需知道如何声明数组,第三章将介绍构造和初始化数组的方法。

 

实际应用

数组是高效率的,但是多数情况下你会想到使用java.util中的Collection类型(包括HashMapArrayListTreeSet)。Collection类为访问对象提供了更加灵活的方法(如插入、删除、读取等),并且与数组不同,Collection类能够随着添加和删除元素而动态伸缩。有一种可满足多种需要的Collection类型。你需要快速排序吗?需要一组没有重复值的对象吗?需要一种访问名/值对的方法吗?第7章将更详细地介绍它们!

 

 数组是通过说明它将要保存的元素类型来声明的,元素类型可以是一个对象或基本类型,类型后面的方括号可以位于标识符的左边或右边。

声明一个基本类型的数组如下所示。

 声明一个对象引用数组如下所示。

实际应用

声明数组应用时,应该总是将方括号进阶在声明类型之后,而不是在标识符(变量名称)之后。这样,阅读该代码的任何人都能很容易地判断,比如key是一个指向int数组对象的易用,而不是一个指向int基本类型的引用。

还可以声明多维数组,这种数组实际上就是数组的数组。声明方式如下:

第一个例子是一个三维数组(一个数组的数组的数组) ,第二个例子是一个二维数组。注意,在第二例子中,我们将一个方括号放在变量名前面,而将另一个放在变量名的后面。这对编译器来说是完全合法的,这再次证明了“合法并不意味着合适”。

考试注意事项

在声明中包含数组大小永远是不合法的。我们知道在某些语言中可以这样做,这就是为什么你有可能看到某些考题包含此类代码的原因:

int [5] scores;

上面的代码不能通过编译。记住,只有在真正实例化数组对象时,JVM才会分配空间。这时才涉及数组大小的问题。

第三章将更深入地讨论数组,说明如何初始化和使用数组,以及如何处理多维数组。等着瞧吧!

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值