當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。