Введение
Метод numberOfTrailingZeros()
возвращает количество битовых нулей, следующих после младшего по порядку единичного бита (самого правого) переданного значения типа long. Этот метод является частью класса Long
пакета java.lang
.
💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал
Метод numberOfTrailingZeros()
возвращает количество битовых нулей, следующих после младшего по порядку единичного бита (самого правого) переданного значения типа long. Этот метод является частью класса Long
пакета java.lang
.
Создайте новый Java-файл с использованием редактора nano
, введя следующую команду в терминале:
touch ~/project/TrailingZeros.java
Добавьте следующий код, чтобы использовать метод numberOfTrailingZeros()
для получения количества конечных нулей в значении типа long:
public class TrailingZeros {
public static void main(String[] args) {
// положительное число
long num1 = 170L;
System.out.println("Исходное число равно " + num1);
System.out.println("Двоичное представление равно = " + Long.toBinaryString(num1));
System.out.println("Количество конечных нулей равно = " + Long.numberOfTrailingZeros(num1));
// отрицательное число
long num2 = -57L;
System.out.println("Исходное число равно " + num2);
System.out.println("Двоичное представление равно = " + Long.toBinaryString(num2));
System.out.println("Количество конечных нулей равно " + Long.numberOfTrailingZeros(num2));
}
}
Скомпилируйте код на Java с использованием следующей команды в терминале:
javac ~/project/TrailingZeros.java
После завершения компиляции запустите программу, введя следующую команду в терминале:
java TrailingZeros
Вывод программы будет выглядеть так:
Original Number is 170
Binary representation is = 10101010
Number of trailing zeros is = 1
Original Number is -57
Binary representation is = 1111111111111111111111111111111111111111111111111111111111000111
Number of trailing zeros is 0
Вы также можете получать ввод от пользователя и возвращать количество конечных нулей этого числа. Добавьте следующий код, чтобы достичь вышеописанной функциональности:
import java.util.Scanner;
public class TrailingZeros {
public static void main(String[] args) {
try {
System.out.println("Введите число: ");
Scanner sc = new Scanner(System.in);
long num3 = sc.nextLong();
System.out.println("Двоичное представление равно = " + Long.toBinaryString(num3));
System.out.println("Количество конечных нулей равно " + Long.numberOfTrailingZeros(num3));
} catch (Exception e) {
System.out.println("Некорректный ввод");
}
}
}
Скомпилируйте обновленный код на Java с использованием следующей команды в терминале:
javac ~/project/TrailingZeros.java
После завершения компиляции запустите обновленную программу, введя следующую команду в терминале:
java TrailingZeros
Когда программа запросит у вас ввод, введите значение типа long по своему выбору и нажмите клавишу 'Enter'. Программа выведет двоичное представление числа и количество конечных нулей.
В этом практическом занятии вы узнали, как использовать метод numberOfTrailingZeros()
для возврата количества конечных нулей в переданном значении типа long. Также вы создали программу с вводом пользователя, которая получает ввод от пользователя и возвращает количество конечных нулей этого числа.