Java--Arrays 类

Posted Z && Y

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java--Arrays 类相关的知识,希望对你有一定的参考价值。

1. Arrays 类

数组的工具类java.util.Arrays由于数组对象本身并没有什么方法可以供我们调用,但API中提供了一个工具类Arrays供我们使用,从而可以对数据对象进行一些基本的操作。


文档简介:

  • Arrays类中的方法都是static修饰的静态方法,在使用的时候可以直接使用类名进行调用,而"不用"使用对象来调用(注意:是"不用" 而不是 “不能”)
  • java.util.Arrays 类能方便地操作数组. 使用之前需要导包!

具有以下常用功能:

  • 给数组赋值:通过 fill 方法。
  • 对数组排序:通过 sort 方法,按升序。
  • 比较数组:通过 equals 方法比较数组中元素值是否相等。
  • 查找数组元素:通过 binarySearch 方法能对排序好的数组进行二分查找法操作。


1.1 打印数组

    public static void main(String[] args) {
        int[] a = {1, 2};
        System.out.println(a); //[I@1b6d3586
        System.out.println(Arrays.toString(a)); //[1, 2]
    }


1.2 数组排序

对指定的 数值 型数组按数字升序进行排序 对字符型数组 按ASCII码升序排序

    public static void main(String[] args) {
        int[] a = {1, 2, 323, 23, 543, 12, 59};
        System.out.println(Arrays.toString(a));
        Arrays.sort(a);
        System.out.println(Arrays.toString(a));
        char[] chars = {'d', 'c', 'a', 'e', 'e', 'b'};
        System.out.println(Arrays.toString(chars));
        Arrays.sort(chars);
        System.out.println(Arrays.toString(chars));
    }


1.3 二分法查找

  • 在数组中查找指定元素并返回其下标
  • 注意:使用二分搜索法来搜索指定的数组,以获得指定的值。必须在进行此调用之前对数组进行排序(通 过sort方法等)。如果没有对数组进行排序,则结果是不确定的。
  • 如果数组包含多个带有指定值的元素,则无法保证找到的是哪一个。
    public static void main(String[] args) {
        int[] a = {1, 2, 323, 23, 543, 12, 59};
        Arrays.sort(a); //使用二分法查找,必须先对数组进行排序
        System.out.println(Arrays.toString(a));
        System.out.println("该元素的索引:" + Arrays.binarySearch(a, 12));
    }


1.4 元素填充

    public static void main(String[] args) {
        int[] a = {1, 2, 323, 23, 543, 12, 59};
        Arrays.fill(a, 2, 4, 100); //将[2,4)索引的元素替换为100
        System.out.println(Arrays.toString(a));
    }


1.5 数组转换为List集合

    public static void main(String[] args) {
        int[] a = {1, 2, 323, 23, 543, 12, 59};
        List<int[]> list = Arrays.asList(a);
    }


以上是关于Java--Arrays 类的主要内容,如果未能解决你的问题,请参考以下文章

Java Arrays类

java arrays类学习

Java Arrays类

Java Arrays类进行数组排序

Java Arrays类

java Arrays.asList