分为动态定义和静态定义两种方式:
1.动态
int[] a = new int[3];
这种方式数组元素都是默认值,byte、short、int等基本类型默认值为0,引用类型默认值为null。
2.静态
int[] a = new int[]{1,2,3,4,5};
简写形式为int[] a = {1,2,3,4,5};
3先声明后初始化
int[] a;
a = new int[3]; 或 a = new int[]{1,2,3,4,5};
注:此时不可以用静态定义的简写形式。
操作数组常见的两种异常:
1.下标越界
java.lang.ArrayIndexOutOfBoundsException 原因:int[] a = new int[3]; System.out.println(a[3];
2.空指针
java.lang.NullPointerException 原因:int[] a = new int[3]; a = null; System.out.println(a[0]);
数组遍历:
int[]a = new int[3];
for(int i: a){
System.out.println(i);
}
或
for(int i = 0; i < a.length; i++){
System.out.println(a[i]);
}
排序:
直接调用java提供的数组工具类方法sort,此方法只能升序排序。
Arrays.sort(a);
冒泡排序法:两两比较,然后交换值。
int[] a = new int[]{1,3,6,2,8}; int temp; for(int i=0; i<a.length; i++){ for(int j=0; j<a.length-i-1; j++){ if(a[j]<a[j+1]){ temp = a[j]; a[j] = a[j+1]; a[j+1] = temp; } } }