数组
到目前为止,我们都是使用一个变量就声明一个变量,但是我们我们现在要声明10个整型变量,那么我们是不是需要写10行代码呢?虽然我们可以在一行代码中同时声明多个变量,写10个也不算什么,但是如果要声明50个,或者100个呢!这个时候最好的方法是使用数组组织这些数据了。
一、数组的作用和组织方式
数组是一个可以保存多个相同类型的变量的顺序集合,这些变量在数组中以列表的形式存在,每个信息都对应的有自己的脚标,编程时可以通过数据项的脚标很方便的访问到每个信息。数组类型在创建时需要指定长度,它是固定长度值存储一类信息的集合。
数组的组织方式在物理方式和逻辑方式上都是以顺序表的方式保存的,也就是说如果有一个由10个整型变量组成的数组,那么这10个变量都是存储在相邻的内存区域中,逻辑上也是相邻的。
数组a
a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9]
二、数组的声明和初始化
要使用数组的第一步当然就是声明一个数组,和声明一个变量类似,也需要先写上数组的类型,数组名称的命名规范和变量的命名一样,但是为了和其他的变量的声明相区别,在声明一个数组是需要使用一对中括号([])。
声明一个数组可以这样:
String unames[]; int uages[]; float scores[];
学过C语言的同学应该感动非常熟悉了,但是java也可使用下面这种写法,把中括号前置,其效果是一样的。
String []unames; int []uages; float[] scores; // 中括号前置还是后置的声明是等效的
和声明变量一样,我们也可以在声明的同时初始化内容,也可以声明数组对象的大小,以后在再进行赋值操作。
因为数据也是对象,所以我们可以使用new运算符来直接构造数组对象,并初始化数组的大小。如下面的示例:声明数组,然后使用new关键字例如:
String unames[]; unames=new unames[50];//可以先声明unames数组,再创建数组,指定长度
声明了一个数组名是unames的对象,该对象可以放10个字符串对象。当然,我们也可以在声明的同时创建数组,如下面这个示例:
String unames[] = newString [50]; int[] scores; = new int [50];
new关键字通常的含义是创建对象分配计算机内存空间,当我们使用new创建数组时,java将会自动给基本数据类型的数组赋予初始值,比如int的数组每个位置都是0,boolean的数组每个位置都是true,char的数组每项都是’