数组(array)
初始化: 1、数据类型[] 数组名 (推荐使用) 2、数据类型 数组名[]
动态初始化: 数组类型[] 数组名 = new 数据类型[数组长度] int[] arr = new int[length]
静态初始化: 数组类型[] 数组名 = new 数据类型[]{元素1,元素2,元素3,...} lint[] arr = new int[]{1,2,3}
简化版: 数据类型[] 数组名 = {元素1,元素2,元素3,...} int[] arr = {1,2,3};
多维数组 数据类型[][] 数组名 = {{元素1...},{元素1...},{元素1...}}
二维数组
二维数组动态初始化: 数据类型[][] 数组名 = new 数据类型[m][n]二维数组静态初始化: 数据类型[][] 数组名 = new 数据类型[][]{{元素...},{元素...},{元素...},...}
查找元素快: 通过索引,可以快速访问指定位置的元素。
增删元素慢:
- 指定索引位置增加元素:需要创建一个新数组,将指定新元素存储在指定索引位置,再把原数组元素根据索引,复制到新数组对应索引的位置
- 指定索引位置删除元素: 需要创建一个新数组,把原数组元素根据索引,复制到新数组对应索引的位置,原数组中指定索引位置元素不复制到新数组中。
数组颠倒算法
for(int start=0,end=arr.length-1; start<=end; start++,end--){
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
}
索引查找算法
public static int getIndex(int[] arr,int value){
for(int x=0;x<arr.length;x++){
if(arr[x] == value){
return x;
}
}
return -1;
}
多维数组
int[][] a = {{1,2,3},{4,5,6}};
for (int i = 0; i < a.length; i++) {
for (int j = 0; j <a[i].length ; j++) {
System.out.println(a[i][j]);
}
}