数组使用
1.For-Each循环
适合打印输出,没有下标。
for(type element:array){
System.out.println(element);
}
public static void main(String[] args){
double[] myList = {1.9, 2.9, 3.4, 3.5};
//打印所有数组元素
for(double element :myList){
System.out.println(element);
}
}
//反转数组
public static int[] reverse(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;
}
}
2.数组作方法入参
数组可以作为参数传递给方法。
public static void printArray(int[] array){
for(int i = 0;i < array.length;i++){
System.out.print(array[i] + " ");
}
}
3.数组作返回值
public static int[] reverse(int[] list){
int[] result = new int[list.length];
for(int i = 0,j = result.length - 1;i < list.length; i++,j--){
result[j] = list[i];
}
return result;
}
多维数组
多维数组的动态初始化
type[][] typeName = new type[typeLength1][typeLength2];
例:
int a[][] = new int[2][5];
Arrays类
数组的工具类java.util.Arrays
import java.util.Arrays;
1.打印数组
public static void main(String[] args){
int[] a = {1,2};
System.out.println(a); //[I@1b6d3586
System.out.println(Arrays.toString(a)); //[1,2]
}
2.数组排序
对指定的int型数组按数字升序进行排序
public static void main(String[] args){
int[] a = {1,2,323,53,632,754,46,2};
System.out.println(Arrays.toString(a));
Array.sort(a);
System.out.println(Array.toString(a));
}
3.二分法查找
public static void main(String[] args){
int[] a = {1,2,32,23,534,4562,54};
Arrays.sort(a); //必须对数组进行排序才能用二分法查找
System.out.println(Arrays.binarySearch(a,534));
}
4.元素填充
public static void main(String[] args){
int[] a = {1,2,32,23,534,4562,54};
Arrays.sort(a); //必须对数组进行排序才能用二分法查找
Arrays.fill(a, 2, 4, 100); //将2到4索引的元素替换为100
System.out.println(Array.toString(a));
}
5.数组转换为List集合
int[] a = {3,5,1,9,7};
List<int[]> list = Arrays.asList(a);
感想