数组:一组相同类型变量的集合
//写法
int[] array;(要求)
int array[];
数组是引用数据类型,数组创建时必须要设置数组的大小(长度)。
//方式一
int[] array = new int[10];
//方式二
int[] array = new int[]{1,2,3,4,5}
//方式三
int[] array = {1,2,3,4,5}
数组的特点:数组一旦创建后,长度不可变,数组元素具备默认值。
访问数组,通过元素的索引来访问。索引从0开始
如何遍历数组元素?
for(int i = 0 ; i < array.length; i++){ //此处的length是属性
}
冒泡排序
原理:使用嵌套循环,外层循环控制比较的轮数,里层循环控制每一轮比较的次数。
循环体:每次循环将相邻的两数比较,如果比较的前一个比后一个数小,则交换两数的位置
外层循环的条件:数组长度 -1
里层循环的条件:从数组的第一个元素开始,到数组最后第二个元素为止 再 - i
//数组的降序排列算法
int[] array = new int[]{87,65,98,47,53};
//外层循环控制比较的轮数
for(int i = 1; i < array.length; i++){
//里层循环控制每一轮比较的次数,-i的目的在于扣除上一轮最终比较后的不参与比较的最大或者是最小值
for(int j = 0; j < array.length-i; j++){
//用当前索引的元素和下一个元素进行比较
if(array[j] < array[j+1]){
//交换两数
int temp = array[j];
array[j] = array[j+1];
array[j+1] = temp;
}
}
}
选择排序
每一轮比较后,将最大的数或最小的数放在第一个数处
//外层循环的i表示要比较的第一个数的索引
for(int i = 0; i < array.length-1; i++){
//里层循环的j表示要比较的第二个数的索引
for(int j = i+1; j < array.length; j++){
//使用i索引对应元素依次和后面的每一个元素进行比较
if(array[i] < array[j]){
int temp = array[i];
array[i] = array[j];
array[j] = temp;
}
}
}
二维数组:数组中的每个元素的类型也是数组
//创建了一个长度为5 的二维数组,该数组包含了5个数组类型的变量
int[][] array = new int[5][];
打印显示二维数组元素的每个值
for(int i = 0 ; i < array.length; i++){
for(int j = 0;j < array[i].length;j++){
}
}
对象数组
对象数组的元素默认值为null,因此当时使用对象数组时,必要对数组元素进行实例化才能使用。
数组是引用数据类型,因此元素不应引用同一个实例对象。
获取当前时间
import java.util.Date
Date date = new Date();
//显示字符串格式的时间
new Date().toLocaleString()
//格式化自定义的时间显示
new simpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
- //获取当前时间对应的毫秒值
- getTime()方法