之前的基本数据类型变量一次只能存储一个不可分解的简单数据,比如int i;一次只能存储一个整数。但是在实际的应用当中,可能会需要一次存储很多个整数,比如之前有一个例题,Fibonicci数列,之前做时只是单纯地列出所有的项,并没有将每一项存储下来,所以如果要输出某一项,就要重新写代码,很不方便。采用数组,这样的问题就会迎刃而解。 数组(array)是具有相同数据类型的元素的有序集合。 数组的元素个数称为数组长度。 元素在数组中的具体位置称为元素的下标。 采用一个下标唯一确定一个数组称为一维数组。 采用两个下标确定一个数组称为二维数组。 今天介绍的是一维数组。 1、声明 数据类型【】数组名 数据类型数组名【】 两组均可声明一个数组。 其中,数据类型是数组中元素的数据类型。 数组名是自己定义的合法的标识符。 例:inta[];或int[]a; 两种声明大部分情况下是相同的。 但在同一行要声明其他变量时例外。 如:inta[],b;//整数数组,b为一个整数变量 Int[] a,b;//b均为整数数组 2、为数组分配空间 使用new关键字为数组分配内存空间。 数组在内存中是按顺序存储的。 数组变量=new 数据类型【长度】 其中,数据类型与数组声明时的数据类型一致;长度必须是正整数。 例:a=newint[5];//为数组a分配空间,长度为5 通常将上两条放在一条语句里,如下: int a[]=new int[5]; 也可以用整数变量为其指定长度。如: inta=5; intb[]=newint[a]; 3、数组长度length Java为每个数组都提供length属性来表示数组占用的存储单元的个数。使用.运算符可获得数组长度: 数组名.length 4、下标 一个数组元素由一个下标唯一确定,语法如下: 数组名【下标】 下标从0开始,到数组名.length-1结束。 在写代码时要注意下标不能越界,否则就会出错。 5、数组可以进行的运算 数组可以进行的运算跟数组的数据类型有关系。如果在声明时,数组的数据类型为int,那就可以完成int类型的所有运算。依此类推。 6、数组元素初始化 数组变量可以在声明时初始化。 例:inta[]={1,2,3,4,5}。 此条语句相当于: int a[]=newint[5]; for(inti=0;i<=4;i++) a[i]=i+1;//对数组元素a[i]赋值 7、数组元素的默认值 Java对所有使用new运算符分配的存储单元都进行初始化,根据数据类型不同,默认值不同 如是int类型,默认值为0; 如是float类型,默认值为0.0f; 如是char类型,默认值为’\u0000’; 如是boolean类型,默认值为false; 如是引用类型,默认值为null。 例:用一维数组存储Fibonacci序列前十项。 public class shuzu { public static void main(String args[]){ int a[]=new int[10]; a[0]=0; a[1]=1; for(int i=2;i<a.length;i++){ a[i]=a[i-1]+a[i-2]; } for(int j=1;j<a.length;j++){ System.out.print(String.format("%4d",a[j])); } } } 其运行结果如下: 1 1 2 3 5 8 13 21 34 如果,将Fibonacci序列前十项均保存在数组a中,便可以取任意一项,代码及运行结果如下: |
|
来自: pythonjava学习 > 《待分类》