Java数组
数组定义
int[] nums; (推荐) int nums[];
Java内存
1、栈:存放基本变量类型(包括具体数值),引用对象的变量(存放这个引用在堆里的地址)
2、堆:存放new的对象和数组,可以被所有线程共享,不会存放别的对象引用
3、方法区:可以被所有的线程共享,存放static和class
声明变量(栈),new创建数组(堆),赋值(堆)
int[] nums = new int[10];
初始化
静态初始化:int[] a = {1,2,3};
动态初始化:int[] b = new int[10];
java.lang.ArrayIndexOutOfBoundsException
数组使用
1、for循环
2、for each:for(int x:arrays)
3、做返回值和接收
多维数组
int a[][] = new int[3][2];
int[][] array = {{1,2},{3,4},{5,6}};
多维数组
Arrays类
fill()
Arrays.fill(a,0); //全部赋值为0
Arrays.fill(a, 2, 5, 8); //前闭后开
sort()
equals()
binarySearch():对排序好的数组二分查找
稀疏数组
1、定义
array[k][0] = i; array[k][1] = j; array[k][2] = oldArray[i][j];
可以将array[0][0] = 行数;array[0][1] = 列数;array[0][3] = 总数;
2、恢复
int[] array = new int[[0][0]][oldArray[0][1]];

浙公网安备 33010602011771号