数组(二维)
1. 回顾
Why?
最开始使用变量来存储数据。
int num1 = 10;
String name = "xxx";
What?
在内存中分配了一连串的空间。存储的数据都是相同的数据类型。
How?
数据类型[] 数组名 = new 数据类型[数组的长度];
数据类型 数组名[] = new 数据类型[数组的长度];
数组的要素:
- 数据类型:这个数组存储的元素的类型
- 数组名:用来标识数组的
- 数组的长度:数组能够存储多少个元素
- 数组的索引/下标:从0开始 用来表示每一个元素的位置
- 数组的元素:数组中存储的数据,我们一般称为元素
向数组中存储数据:
数组名[下标] = 元素值;
**从数组中拿数据:**根据元素的下标
数组名[下标]
获取数组长度:
数组名.length(属性)
内存分配:(数组是引用数据类型)
- 在堆中根据数据类型和元素的个数来划分一连串的空间
- 根据数据类型进行初始化
- 将这块空间的地址值赋值给栈中的引用
2. 掌握冒泡排序算法(笔试题)
算法:
双重循环:
口诀:
外层循环n-1
内层循环n-1-i
3. 掌握Arrays数组工具类的使用
toString() 将数组内的元素转换为一个字符串
sort(); 将数组进行升序排序
copyOf(); 将数组内的元素复制到一个指定长度的新数组中
binarySearch(); 二分查找 前提:升序排序好 查找指定数据的索引
4. 理解二维数组的应用(基本的使用)
int[] arr = new int[4];
Java中是没有二维数组的(内存中的形式没有二维数组)!但是语法上有!
int[][] arr = new int[4][];
// 二维数组
// double[][] scores = new double[5][5];
// double[][] scores = new double[5][];
// double[][] scores = new double[][]{{},{}};
double[][] scores = {{1,2,3,4,5},{5,4,7,2,1},{1,3,5,4,9}};