java学习——24.一维数组
之前的基本数据类型变量一次只能存储一个不可分解的简单数据,比如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中,便可以取任意一项,代码及运行结果如下: