- 数组声明:
1)数据类型[] 数组名;
2)数据类型 数组名[]; - 数组创建:
1)格式一:先声明后创建
数据类型[] 数组名;
数组名 = new 数据类型[数组长度];
usage:
int[] arr; arr = new int[10]; // 创建一个长度为10的整型数组
2)格式二:声明的同时创建数组
数据类型[] 数组名 = new 数据类型[数组长度];
usage:
int [] arr = new int[10];
注意:数组长度必须指定! - 数组的初始化
定义:声明数组的同时给数组赋值,叫做数组的初始化。
usage:int[] arr = {1,2,3}; - 数组长度
1)求数组长度:属性length表示数组的长度,usage:a.length
5.初始值
数组创建后是有默认值的。
//声明数组
int[] intArray;
float floatArray[];
//创建数组
intArray=new int[5];
floatArray=new float[5];
//声明并创建
String[] strArray=new String[5];
//声明并初始化
double[] doubleArray = {1.1,1.2,1.3,1.4,1.5};
System.out.println(intArray[intArray.length-1]+" "+strArray[strArray.length-1]+" "+doubleArray[doubleArray.length-1]);
结果 : 0 null 1.5
5.增强型for循环,用于遍历数组,并取出元素
int[] intArray = {1,2,3,4,5,6};
int max = intArray[0];
for(int n:intArray)
{
System.out.print(n+" ");
}
6.冒泡排序
思路:
1)往左往右,每次使一个元素归位,第一次使最后一个元素归位,共执行len-1趟
int len = intArray.length;
int tmp;
for (int i = 0; i < len - 1; i++) {// 趟数,每趟使一个数字归位,共有len-1趟
for (int j = 0; j < len - i - 1; j++) {
if (intArray[j] > intArray[j + 1]) {
tmp = intArray[j];
intArray[j] = intArray[j + 1];
intArray[j + 1] = tmp;
}
}
}
7.二维数组
//声明二维数组
int[][] intArr;
char charArr[][];
float[] floatArr[];
//创建二维数组
intArr = new int[5][5];
System.out.println(intArr[0][0]);
//声明并进行创建
String[][] strArr = new String[5][5];
//创建时,只指定行数,5行
double[][] doubleArr = new double[5][];
//每行相当于一个一维数组,数组名为doubleArr[i];
doubleArr[0] = new double[6];//第一行有6列
doubleArr[1] = new double[3];//第二行有3列
System.out.println(doubleArr[0][5]+" "+ doubleArr[1][2]);
//System.out.println(doubleArr[1][3]);
//声明并初始化
int[][] iArr = {{1,2},{3,4},{5,6}};
System.out.println(iArr[0][1]);
int[][] num1= {{1,2},{3,5,5},{6,7,8,9}};
System.out.println(num1[0].length);
//对非方正的二维数组遍历
for(int i=0;i<num1.length;i++)
{
for(int j=0;j<num1[i].length;j++)
{
System.out.print(num1[i][j]+" ");
}
System.out.println();
}
}