Java学习-数组08Arrays类

Arrays类

  • 数组的工具类java.util.Arrays。
  • 由于数组对象本身并没有什么方法可以供我们调用,但API中提供了一个工具类Arrays供我们使用,从而可以对数据对象进行一些基本的操作。
  • 查看JDK帮助文档。
  • Arrays类中的方法都是static修饰的静态方法,在使用的时候可以直接使用类名进行调用,不需要使用对象来调用。(注意:是不需要,而不是不可以)
  • 具有以下常用功能:
    • 给数组赋值:通过fill方法。
    • 对数组排序:通过sort方法,默认为升序。
    • 比较数组:通过equals方法比较数组中的元素值是否相等。
    • 查找数组元素:通过binarySearch方法能对排序好的数组进行二分查找法操作。

演示几个常用的

toString():输出打印数组元素

package com.array.www;

import java.util.Arrays;

public class ArrayDemo06 {
    public static void main(String[] args) {
        int[] a = {1,2,3,4,5};
        //直接用输出语句打印出来的是数组对象的地址
        System.out.println(a);//[I@4554617c

        //toString(): 打印数组元素
        System.out.println(Arrays.toString(a));//[1, 2, 3, 4, 5]
    }
}

我们其实自己也是可以写出来类似的方法的,我们可以写尝试一下。

package com.array.www;

import java.util.Arrays;

public class ArrayDemo06 {
    public static void main(String[] args) {
        int[] a = {1,2,3,4,5};
        //直接用输出语句打印出来的是数组对象的地址
        System.out.println(a);//[I@4554617c

        //toString(): 打印数组元素
        System.out.println(Arrays.toString(a));//[1, 2, 3, 4, 5]
        //输出与上面一致
        printArray(a);//[1, 2, 3, 4, 5]
    }
    
    
    //我们自己写的输出打印数组元素的方法,执行效果与toString()一致
    //我这里要强调的是我们不需要过度依赖工具类 ,不过Java提供的工具类往往比我们自己写的更为强大一些
    public static void printArray(int[] a){
        for (int i = 0; i < a.length; i++) {
            if (i == 0){
                System.out.print("[");
            }
            if (i == a.length-1){
                System.out.print(a[i]+"]");
            }else {
                System.out.print(a[i]+", ");
            }
        }

    }
}

sort():对数组进行排序

package com.array.www;

import java.util.Arrays;

public class ArrayDemo07 {
    public static void main(String[] args) {
        int[] a = {2,8,9,0,18,13,1,3};
        //对数组进行排序,默认为升序
        Arrays.sort(a);
        //输出打印数组
        System.out.println(Arrays.toString(a));//[0, 1, 2, 3, 8, 9, 13, 18]
    }
}

fill():给数组赋值,或者叫做数组填充

package com.array.www;

import java.util.Arrays;

public class ArrayDemo08 {
    public static void main(String[] args) {
        int[] a = {1,2,3,4,5};
        //给数组元素全部赋值为0
        Arrays.fill(a,0);
        System.out.println(Arrays.toString(a));//[0, 0, 0, 0, 0]

        //给数组元素从下标位置2到4之间赋值为6,不包含4
        Arrays.fill(a,2,4,6);
        System.out.println(Arrays.toString(a));//[0, 0, 6, 6, 0]
    }
}
posted on 2025-06-19 02:14  burgess0x  阅读(8)  评论(0)    收藏  举报