数组
什么是数组
- 数组是相同类型数据的有序集合
- 数组描述的是相同类型的若干个数据, 按照一定的先后次序排列组合而成
- 数组也是一个对象
数组的声明和创建
声明
int[] nums; //首选的方法, 声明一个数组
int nums[]; //此方法是为了让熟悉C语言的同学快速掌握java的,不建议使用这个声明
创建
nums = new int[10]; //这里面可以存放10个int类型的数字
数组.length()
用来计算数组的长度
初始化
静态初始化
创建+赋值
int[] a = {1,2,3,4,5,6,7};
动态初始化
包含默认初始化, 值全为零, 需要再赋值
int[] b = new int[10];
多维数组
多维数组可以看成是数组的数组
int[][] arr = {{1,2},{3,4},{4,5},{5,6}};
//相当于
//arr[1] 1,2
//arr[1] 3,4
//arr[1] 4,5
//arr[1] 5,6
二位数组的遍历
int[][] arr = {{1,2},{2,3},{3,4}};
for(int i=0; i<arr.length(); i++){
for(int j=0; j<arr[i].length(); j++){
System.out.println(arr[i][j]);
}
}
Arrays类
-
打印数组元素
toString
int[] a = {1, 2, 3, 4}; System.out.println(Arrays.toString(a));
-
排序
sort
int[] a = {4, 6, 2, 5, 7}; Arrays.sort(a); System.out.println(Arrays.toString(a));
-
填充
fill
int[] a = {1,2,3,4,5,6,7,8}; Arrays.fill(a, 2, 4, 9); //数组a的第2个到第4个全部被9填充
-
待补充…
冒泡排序
public static int[] sort(int[] arr){
//临时变量
int temp = 0;
//外层循环,判断我们这个要走多少次
for(int i=0; i<arr.length-1; i++){
//内层循环, 比较判断两个数, 如果第一个数比第二个数大, 则交换位置
for(int j=0; j<arr.length-1-i; j++){
temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
return arr;
}