0x00
本篇大致目录
学习java,就是学习各种各样的类
0x01 数组的定义
数组中数据的类型是相同的
0x02 数组声明创建
0x03 内存分析
简单的内存分析
如果下表大于空间,会抛出异常
三种初始化状态
0x04 数组的四个基本特点
java的对象都是在堆中的
数组的边界问题
0x05 数组的使用
直接附上写的代码
0x06 二维数组
在数组中嵌套数组
0x06 Arrays类
Arrays是一个数组的工具类,再idea中可以ctrl点进去,看struct里的方法
三种方法
0x07 冒泡排序练习
思路:
package Array;
import java.util.Arrays;
public class Array04 {
public static void main(String[] args) {
//学习如何计时,以便看算法优化结果
long startTime = System.nanoTime();
//冒泡排序练习
int[] a = {1111,22,33,44321,55,666,3424,23423,324324,32423,324,1321};
System.out.println(Arrays.toString(sortMao(a)));
long endTime = System.nanoTime();
System.out.println("Processing time :"+(endTime - startTime));
//329700 -->294300
}
//冒泡排序 小到大
public static int[] sortMao(int[] array){
int temp=0;
for (int i = 0; i < array.length-1; i++) { //外部循环次数
boolean flag=false;
for (int j = 0; j < array.length-1; j++) { //内部循环次数
if (array[j] > array[j + 1]) {
temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
flag=true;
}
}
if(flag==false){
break;
}
}
return array;
}
}
0x08 稀虚数组
稀疏数组介绍:
记录有效的坐标,压缩储存,要用的时候再还原