Подтвердить что ты не робот

Определение четных/нечетных чисел (целых чисел)?

Я чувствую себя глупо, задавая такой простой вопрос, но есть ли простой способ определить, является ли целое четным или нечетным?

4b9b3361

Ответ 1

Это не совсем специфический андроид, но довольно стандартная функция:

boolean isOdd( int val ) { return (val & 0x01) != 0; }

Ответ 2

if ((n % 2) == 0) {
    // number is even
}

else {
    // number is odd
}

Ответ 3

Вы можете использовать модульное подразделение (технически в Java он действует как строгий оператор остатка, ссылка имеет большее обсуждение):

if ( ( n % 2 ) == 0 ) {
    //Is even
} else {
    //Is odd
}

Ответ 4

Если вы выполняете побитовое и 1, вы можете определить, является ли младший значащий бит равным 1. Если это так, число нечетное, в противном случае даже.

В языках C-ish bool odd = mynum & 1;

Это быстрее (по производительности), чем mod, если это вызывает беспокойство.

Ответ 5

Когда каким-то образом % в качестве оператора не существует, вы можете использовать оператор AND:

oddness = (n & 1) ? 'odd' : 'even'