文章目录
前言
本文将学习二维数组、arrays类以及冒泡排序
一、二维数组
多维数组可以看成是数组的数组,比如二维数组就是一个特殊的一维数组,其每一个元素都是一个一维数组
示例:
String[][] str = new String[4][2];
Arrays.java文件
public class Arrays {
public static void main(String[] args) {
int [][]a = {{1,2},{3,4},{5,6},{7,8}};
//二维数组的下标长度表示
System.out.println(a[0].length);//输出2
System.out.println(a.length);//输出4
//打印二维数组
for (int i = 0; i < a.length; i++) {
for (int j = 0; j < a[i].length; j++) {
System.out.print(a[i][j]+" ");
}
}
}
}
二、Arrays类
java.util.Arrays 类能方便地操作数组,它提供的所有方法都是静态的。
1.toString打印数组内各元素
1.1 示例
int []a = {1,2,6,3,45,75,23};
System.out.println(Arrays.toString(a));
运行结果
1.2 自己实现内部逻辑
printArray方法
public static void printArray (int []array){
for (int i = 0; i < array.length; i++) {
if(i == 0){
System.out.print("[");
}
System.out.print(array[i]);
if(i < array.length - 1){
System.out.print(" "+",");
}
if(i == array.length - 1){
System.out.print("]");
}
}
}
2. sort升序排列
int []a = {1,2,6,3,45,75,23};
//升序排序
Arrays.sort(a);
//打印数组内各元素
System.out.println(Arrays.toString(a));
运行结果
3. fill数组填充(重新赋值)
Arrays.fill(a,2,4,0);//下标位于[2,4)的元素重新赋值为0
System.out.println(Arrays.toString(a));
运行结果
4.equals比较数组元素是否相等
int []a = {1,2,6,3,45,75,23};
int []a1 = {1,2,6,3,45,75,23};
System.out.println( Arrays.equals(a,a1));
运行结果
三、冒泡排序
int []a = {1,2,6,3,45,75,23};
//定义一个空变量,方便实现大小交换逻辑
int temp = 0;
//外层循环判断循环次数,每次循环都减少一次比较
for (int i = 0; i < a.length - 1; i++) {
//内层循环实现大小交换
for (int j = 0; j < a.length - 1 - i; j++) {
//升序逻辑,变为降序,改变大小符号。
if(a[j]>a[j+1]){
temp = a[j+1];
a[j+1] = a[j];
a[j] = temp;
}
}
System.out.print(a[i]+" ");
}
运行结果