当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Arrays compare()用法及代码示例


Java 中的 Arrays compare() 方法属于 Arrays 类和 java.util 包。此方法按字典顺序(字典顺序)比较两个数组。 Boolean、byte、char、double、float、int、long、short 和 Object 数组有两种不同的重载版本。此方法根据以下情况返回值。

  • 如果数组等于另一个数组,则返回 0。
  • 如果数组按字典顺序小于另一个数组,则返回小于 0 的值
  • 如果数组按字典顺序大于另一个数组(更多字符),则返回大于 0 的值。

空数组按字典顺序小于非空数组,如果两个数组都为空,则认为这两个数组相等,因此在这种情况下将打印 0。

用法:

Arrays.compare(array1,array2);
// array1 and array2 are two arrays

参数和返回类型:方法 compare() 接受一个数组作为具有不同数据类型的参数,例如:字符串、整数、浮点数、双精度、长整数等。该方法的返回类型是整数。如果数组按字典顺序较大,则返回正值,较小则返回负值,相等则返回 0。



Exceptions:它通常会抛出 NullPointerException 和 ClassCastException,这两种异常的方式也不同。

  • NullPointerException :NullPointerException 是一个运行时异常,它引用 null 并且在访问不指向任何对象的变量时发生。
  • ClassCastException:当我们试图将一个类对象转换为另一个 class-type 对象时会发生此异常。

如果我们要调用这个方法,首先从JavaJava 中导入“Arrays” 类。 util 包只需添加“import java.util.Arrays”命令。然后通过“Arrays”调用方法跟随“.compare(parameter1,parameter2);”这样您就可以轻松调用 compare() 方法。

范例1:举个例子,首先导入java.util.Arrays,创建一个名为CompareExample的公共类,然后用元素初始化两个整数数组,使用compare()方法进行比较,最后打印compare方法的结果。

Java


import java.util.Arrays;
public class CompareExample{
    public static void main(String[] args)
    {
        //Initialized two integer array
        int[] array1 ={6, 7, 8, 11, 18, 8, 2, 5};       
        int[] array2 ={3, 5, 9, 13, 28, 6, 8, 9};
        //compare both integer array using compare method and finally print result      
        System.out.println("Result is "+ Arrays.compare(array1,array2));
    }
}
输出
Result is 1

因此所需的输出是 1,因为 array1 在字典上大于 array2。

范例2:再举一个例子,在这个例子中,我们将取一个不同数据类型的数组,也就是float,和我们在上面的例子中做的一样,首先导入类,然后创建一个名为“CompareExample”的新类用元素初始化两个浮点型数组,然后使用数组类的比较方法比较它们,最后打印我们得到的结果。

Java


// import Arrays class from java.util package
import java.util.Arrays;
public class CompareExample{
   
    public static void main(String[] args)
    {
        // Initialize two float array with element
        float[] floatArray1={5.12f, 8.3f, 9.17f, 2.5f, 8.8f, 5.17f, 4.2f, 7.37f};
        float[] floatArray2={7.12f, 9.3f, 6.17f, 7.5f, 5.8f, 7.17f, 3.2f, 6.37f};
       
        // compare two float array using compare method and finally print result
        System.out.println("Result is " + Arrays.compare(floatArray1, floatArray2));
    }
}
输出
Result is -1

结果在输出中为 -1,因为 floatArray1 在字典上小于 floatArray2。

范例3:让我们举个例子。在此,我们将初始化一个具有相同数字和大小的数组。然后比较array1和array2,最后打印我们从比较方法得到的结果。

Java


import java.util.Arrays;
public class CompareExample {
    public static void main(String[] args)
    {
        // Initialize two integer array with same elements
        int[] array1 = { 1, 2, 3, 4 };
        int[] array2 = { 1, 2, 3, 4 };
       
        // compare array1 and array2 using compare() method
        // and print the result
        System.out.println(
            "Result is " + Arrays.compare(array1, array2));
    }
}
输出
Result is 0

所需的输出是 0,因为我们得到了两个具有相同数字和大小的整数数组。

在本文中,我们学习了如何使用 compare() 方法。如果 array1 按字典顺序大于 array2,它将返回一个正 (-ve) 值。如果 array1 按字典顺序小于 array2,它将返回一个负 (-ve) 值。如果两个数组在字典上都相等或为空,那么它将返回 0。




相关用法


注:本文由纯净天空筛选整理自goutamverma84009大神的英文原创作品 Java Arrays compare() Method with Examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。