Java| 数组实用类和方法

111 阅读2分钟

一、Arrays类

Java的Arrays类提供了一系列静态方法,用于操作数组,如排序、搜索、填充、比较和转换。

demo:排序和填充

import java.util.Arrays;
public class ArraysClassExample {
    public static void main(String[] args) {
        int[] numbers = {5, 3, 1, 4, 2};
        // 使用Arrays类进行排序
        Arrays.sort(numbers);
        System.out.println("排序后的数组:" + Arrays.toString(numbers));  // 输出:排序后的数组:[1, 2, 3, 4, 5]
        // 使用Arrays类填充数组
        Arrays.fill(numbers, 10);
        System.out.println("填充后的数组:" + Arrays.toString(numbers));  // 输出:填充后的数组:[10, 10, 10, 10, 10]
    }
}

二、System.arraycopy()方法

System.arraycopy()方法用于复制数组的一部分到另一个数组中。这是一个本地方法,通常比手动循环复制要快。

demo:

public class SystemArrayCopyExample {
    public static void main(String[] args) {
        int[] srcArray = {1, 2, 3, 4, 5};
        int[] destArray = new int[10];
        // 使用System.arraycopy()方法复制数组
        System.arraycopy(srcArray, 0, destArray, 0, srcArray.length);
        System.out.println("复制后的数组:" + Arrays.toString(destArray));  // 输出:复制后的数组:[1, 2, 3, 4, 5, 0, 0, 0, 0, 0]
    }
}

三、Arrays.copyOf()方法

Arrays.copyOf()方法用于创建一个数组的副本,可以选择指定新数组的大小。

demo:

public class ArraysCopyOfExample {
    public static void main(String[] args) {
        int[] originalArray = {1, 2, 3, 4, 5};
        // 使用Arrays.copyOf()方法创建数组的副本
        int[] copiedArray = Arrays.copyOf(originalArray, originalArray.length);
        System.out.println("副本数组:" + Arrays.toString(copiedArray));  // 输出:副本数组:[1, 2, 3, 4, 5]
        // 创建一个更长的数组副本,并填充额外的元素
        int[] longerArray = Arrays.copyOf(originalArray, originalArray.length + 2);
        System.out.println("更长的副本数组:" + Arrays.toString(longerArray));  // 输出:更长的副本数组:[1, 2, 3, 4, 5, 0, 0]
    }
}

四、Arrays.equals()方法

Arrays.equals()方法用于比较两个数组是否相等,即它们长度相同且对应位置的元素也相同。

demo:

public class ArraysEqualsExample {
    public static void main(String[] args) {
        int[] array1 = {1, 2, 3};
        int[] array2 = {1, 2, 3};
        int[] array3 = {1, 2, 4};
        // 使用Arrays.equals()方法比较数组
        boolean equal1 = Arrays.equals(array1, array2);
        boolean equal2 = Arrays.equals(array1, array3);
        System.out.println("array1 和 array2 是否相等:" + equal1);  // 输出:array1 和 array2 是否相等:true
        System.out.println("array1 和 array3 是否相等:" + equal2);  // 输出:array1 和 array3 是否相等:false
    }
}

以上就是本次分享的所有内容,感兴趣的朋友点个关注呀,感谢大家啦~