数组
声明数组变量
dataType[] arrayName;
int[] id;
创建数组
dataType[] arrayName = new dataType[arraySize];
int[] num = new num[10];
int[] array = {1,2,3,4};
通过数组下标访问数组内成员,从0开始。
数组处理
-
可以使用for循环对数组进行遍历,通过
length
属性控制次数。for(int i=0;i<array.length;i++){ // 代码 }
-
使用for-each循环遍历数组
for( type var : array ){ System.out.print(var); }
数组的使用
除了当做变量使用,数组也可以作为参数传入函数中,或者作为返回值。
多维数组(以二维数组为例)
type[][] name = new type[length][length];
int[][] a=new int[3][2];
// 3行2列
int[][] a = {{1,2,3,4},{1,2,3,4}};
Arrays类
java.util.Arrays 类能方便地操作数组,它提供的所有方法都是静态的。
具有以下功能:
- 通过fill方法给数组赋值
- 通过sort方法给数组排序
- 通过equals方法比较数组中国元素是否相等
- 通过binarySearch方法能对排序好的数组进行二分查找法操作。
方法 | 描述 |
---|---|
int binarySearch(Object[] a,Object key) | 静态方法,用二分查找法在给定数组中搜索给定值的对象。数组在调用前必须是排序好的。如果查找值包含在数组中,则返回搜索键的索引,否则返回-1 |
boolean equals(long[] a,long[] b) | 静态方法,如果两个指定的long数组彼此相等,返回true。如果两个数组以相同的顺序包含相同的元素,则两个数组是相等的,数据类型为基础类型即可使用 |
void fill(int[] a,int val) | 静态方法,将指定的int值分配给指定数组每一个元素的值,数据类型为基础数据类型即可。 |
void sort(Object[] a) | 静态方法,对指定对象数组根据其元素的自然顺序进行升序排序,适用各个基础数据类型。效率并不是太高,推荐手写排序方法。 |
int[] test = {1,2,3,4};
int index = Arrays.binarySearch(test, 3);
System.out.println(index);
Arrays.fill(test, 5);
for(int x : test)
System.out.print(x);