Код IT
← Каталог

Операторы и циклы в Java — Сравнение

Фрагмент из «Операторы и циклы в Java»: Сравнение.

Java main.java
int number = 42;  // двоичное: 101010
System.out.println(Integer.toBinaryString(number));  // 101010
System.out.println(Integer.bitCount(number));         // 3 — три единицы

int mask = 0b11110000;
System.out.println(Integer.bitCount(mask));           // 4

// Практическое применение: проверка чётности количества единиц
int value = 15;  // 1111
boolean evenOnes = (Integer.bitCount(value) % 2 == 0);
System.out.println("Чётное количество единиц: " + evenOnes);  // true

// Сравнение с ручным подсчётом через битовые операции
int manualCount = 0;
int temp = number;
while (temp != 0) {
    manualCount += temp & 1;
    temp >>>= 1;
}
System.out.println("Ручной подсчёт: " + manualCount);  // 3
int number = 42;  // двоичное: 101010
System.out.println(Integer.toBinaryString(number));  // 101010
System.out.println(Integer.bitCount(number));         // 3 — три единицы

int mask = 0b11110000;
System.out.println(Integer.bitCount(mask));           // 4

// Практическое применение: проверка чётности количества единиц
int value = 15;  // 1111
boolean evenOnes = (Integer.bitCount(value) % 2 == 0);
System.out.println("Чётное количество единиц: " + evenOnes);  // true

// Сравнение с ручным подсчётом через битовые операции
int manualCount = 0;
int temp = number;
while (temp != 0) {
    manualCount += temp & 1;
    temp >>>= 1;
}
System.out.println("Ручной подсчёт: " + manualCount);  // 3