簡體   English   中英

如何檢查數組中的所有值是否都具有特定值?

[英]How can I check if all values in an array have a certain value?

在Java中,給定一個值數組(例如整數),有沒有一種方法可以有效地檢查它們是否都具有特定值?

例如,使用整數數組,例如:

int[] numbers = {2, 2, 2, 2, 2, 2, 2};

並且只有在所有條件都為2的情況下,才需要執行一項操作?

if (numbers[1] == 2 && numbers[2] == 2 && numbers[3] == 2 && …)

我知道可以用C ++做到這一點,但是Java呢?

或者,如果使用Java 8,則可以執行以下操作:

if(Arrays.stream(numbers).allMatch(x -> x == 2)) {
    // do something
}

基本上,使用Streams可以非常簡潔地完成與集合/數組有關的所有操作。

public static boolean AreAllEqual(int[] numbers) {
    for(int i = 1; i < numbers.length; i++) {
        if(numbers[0] != numbers[i]) {
            return false;
        }
    }
    return true;
}

在這里使用一個函數將節省大量的編碼時間,並且還允許您傳遞任意大小的數組(因為您正在根據其長度迭代數組)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM