数组在实际开发中每时每刻都在使用,是各类语言中非常重要的一部分。下面谈谈Java中的数组。
什么是数组?
数组是一种数据结构,用来存储同一类型值得集合。数组中的每一个值,都有一个整数下标与之对应。数组的整数下标是从0开始的。所以,可以通过数组中的每一个元素的获取,都和这个下标有关,可以说没有下标,我们就获取不到数组里面的元素。
为什么数组是一种数据结构,而不是一种数据类型了?
因为数据结构是一种结构,我们可以自己定义,而数据类型是只是一种类型,比如Java中的int、float、double类型等,这些类型只要你想定义,你就只能使用对应的类型,程序员自己不能自己定义,比如int a = 10;
但是数据结构就不一样了,我们可以使用数据类型来定义一种数据结构,也可以使用自己定义的类型来定义一种数据结构,这样特别灵活,比如说,我们可以定义一个书籍类,然后使用这个书籍类型定义一个数据结构,这样的例子很多。
数组的声明
在声明数组时,需要指定数组的类型和数组变量的名字,数组的类型后面要紧跟"[]"。下面声明一个整型数组:
int[] a;
上面的语句只是声明了一个a变量,并没有把a初始化成一个正真的数组,使用new关键字可以初始化一个数组,如下:
int[] a = new int[10];
上面语句创建了能够存储10个整型数据的数组,这里数组的长度要求和C、C++不同,不一定是常量,也可以是变量,上面语句也可以改为下面语句:
int index = 10;
int[] a = new int[index];
所以,Java在数组声明初始化的时候,数组的长度是可以接受变量的,这个在实际开发中用处很大,比C灵活多了。
注意:数组的下标是从0开始的,所以上面声明的数组下标依次是0...9。
一旦创建了数组,就不能改变它的大小,如果经常需要在运行过程中改变数组的大小,就需要使用另外一种数据结构(arrayList),后面学到细说。