数组的定义
一组类型相同而且存储空间连续的数据
数组的声明
Java中所有的变量都需要实现声明才可以使用,数组也不例外
int[] array; //建议使用此形式 int attay[]; //不建议使用这种形式
此时的array的值为null,是因为没有进行初始化,下面进行数组的初始化
/** 创建一个大小为3,类型为int型的数组,把数组的引用赋值给array */ array = new int[3];
一般开发中,声明之后直接初始化
int[] array = new int[3];
数组的使用
//使用下标索引值 System.out.println(data[0]);//区数组的第一个元素,data为数组名,数组下标从0开始,
如何得到数组的元素个数
System.out.println(data.length);//获取数组的长度大小
如何遍历数组
//普通for循环 for(int i = 0; i<data.length; i++){ System.out.println(data[i]); } //forach/forin JDK5.0后出现的,JDK5.0之前使用会报错 for(int x : data){ System.out.println(x); }
数组的复制
clone()方法,直接复制数组,不会改变属性,比较简单
使用 System.arraycopy(1,2,3,4,5);
/** a、要复制的原数组 b、原数组的起始位置 c、要复制的目标数组 d、目标数组的起始位置 e、要复制多少个元素 */ System.arraycopy(a,b,c,d,e);
数组的排序
//冒泡排序 for(int x = 0;x<data.length-1;x++){ for(int y = 0;y<data.length-1-x;y++){ if(data[y] > data[y+1]){ int temp = arr[y]; //此处的temp应与数组元素类型一致 arr[y] = arr[y + 1]; arr[y + 1] = temp; } } } //自动排序 java.util.Arrays.sort(data);//灵活性太差
多维数组
Java当中的多维数组 事实上就是数组的数组而已
int[][] arr = new int[3][5]; //定义了一个整型的二维数组,其中包含3个一维数组,每个一维数组可以存储5个整数
Java当中的多维数组 每一个数组的元素个数可以是不同的
int[][] arr = new int[3][]; //表示一个包含了三个整型的一维数组的二维数组 //数据类型[][] 数组名 = {{元素},{元素1, 元素2},……}; int[][] arr = {{44,2},{4},{6,21,4},{12,7,54,92}};