数组的基本概念
1)数组可以看成是多个相同类型数据的组合,实现对这些数据的统一管理
2)数组中的袁术可以是任何类型,包括基本类型和引用类型
3)数组中的元素的个数,成为数组的长度(java语言中声明数组时不能指定其长度)
数组的声明
一维数组:
//数组类型 数组名[] 或 数组类型[] 数组名
int a[];
int []b;
double d[];
char []ch;
Student stu[];
多维数组
概念:Java中没有真正的多维数组,java中的多维数组不一定是规则矩阵形式
//数组类型 数组名[][] 或 数组类型[][]数组名 或 数组类型[] 数组名[]
int a[][];
int [][]b;
int []c[];
数组的创建
一维数组
//数组名=new 数组元素类型[元素个数]
int a[];
a= new int[5];
int a[]=new int[5];
多维数组
声明时必须声明行数
//数组名=new 数据元素类型[行数][列数];
//数组名=new 数据元素类型[行数][];
a=new int[3][4];
a=new int[3][];
a=new int[][];//错误的声明方式,没有声明行数
数组的初始化
一维数组
int a[]={1,2,3,4,5}; 或 int a[]=new int[]{1,2,3,4,5};
多维数组
int a[][]={{1,2,3},{4,5},{7}};
int a[][]=new int[][]{{1,2,3},{4,5},{7}};
数组元素的访问
java中,数组元素的下表从0开始
元素的下标可以是整型常量或整形表达式
int a[]=new int[5];
a[0]=1;
a[1]=2;
a[2]=3;
a[3]=4;
a[4]=5;
数组的异常
数组越界异常(ArrayIndexOutOfBoundsException)
数组的遍历
利用循环语句和数组下标
class Array_traversal{
public static void main(String args[])
{
String color[]={"red","orange","yellow","green","blue"};
for(int i=0;i<color.length;i++)
{
System.out.println(color[i]);
}
}
}
数组的复制
//复制source数组中从下标srcPos开始的length个元素到目标数组dest,并从目标数组下标为destOos的位置开始存储
System.arraycopy(source,srcPos,dest,destPos,length);
sorce:源数组;
srcPos:源数组中的起始位置
dest:目标数组
destPos:目标数组中的起始位置
length:要复制的数组元素的个数
数组的排序
//对数组arr_name中,从下标为fromIndex到toIndex的元素(不包括toIndex)进行升序排序
Arrays.sort(arr_name);
Arrays.sort(arr_name,fromIndex,toIndex);