Java数组
数组声明创建
首先必须声明数组变量,才能在程序中使用数组
dataType[] array;//首选
dataType array[];//效果相同 但不是首选方法
Java
语言使用new
操作符来创建数组
dataType[] array = new dataType[size];
数组的元素是通过索引访问的 数组索引从0开始
通过length
属性获取数组长度
三种初始化
静态初始化
int[] a = {1,2,3,4,5,6};//基本类型
//有多少个元素代表数组多大 一旦定义好之后 数组就不能在改变
Man[] mans = {new Man(),new Man()}//引用类型
动态初始化
int[] b = new int[10];//包含默认初始化0 先声明后赋值
b[0] = 1;
数组的四个特点
- 长度是确定的 一旦被创建 大小就不可以在改变
- 元素必须的相同类型的
- 数组中的元素可以是任何数据类型 包括基本类型和引用类型
- 数组变量属于引用类型 数组也可以看成是对象 数组中的每个元素相当于该对象的成员变量 数组本身就是对象 Java中对象是在堆中的 因此数组无论保存原始类型还是其他对象类型 数组对象本身是在堆中的
数组的使用
For循环
int[] a = {1,2,3,4,5};
for(int i=0;i<a.length;i++){
System.out.println(a[i]);
}
For-Each循环
int[] a = {1,2,3,4,5};
for(int i : a){ //i循环体 a循环数组
System.out.println(i);
}
作为方法参数和返回值
//作为参数
public static void printArray(int[] arrays){
for(int i=0;i<arrays.length;i++){
System.out.println(arrays[i]);
}
}
//返回数组
public static int[] printArray(int[] arrays){
int[] result = new int[arrays.length];
for(int i=0,j=result.length-1;i<arrays.length;i++,j--){
result[j] = arrays[i];
}
return result;
}
多维数组
多维数组可以看成是数组的数组 ,比如二维数组看成每一个元素的都是一维数组的一维数组
二维数组
int[][] a = new int[2][5];//二行五列的数组
a[0][0] = 1;
int[][] b = {{1,2},{3,4}}
Arrays类
-
这是一个数组的工具类 可以对数据对象进行一些基本的操作
-
Arrays类中的方法都是static修饰的静态方法 在使用的时候可以直接使用类名进行调用 而不用使用对象来调用
-
常用功能
- 给数组赋值:fill方法
- 对数组排序:sort方法 升序
- 比较数组:通过equals方法比较数组中元素值是否相同
- 查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作