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]];
posted @ 2021-02-24 13:29  头秃1997  阅读(61)  评论(0)    收藏  举报