Метод numberOfTrailingZeros класса Integer в Java

JavaJavaBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В Java метод NumberOfTrailingZeros() используется для возврата количества битовых нулей, следующих за младшим (самым правым) единичным битом в дополнительном коде целого значения, переданного в качестве аргумента. Другими словами, он преобразует целое значение в двоичный формат и возвращает общее количество битовых нулей, следующих за младшим (самым правым) единичным битом. В этом практическом занятии вы узнаете, как использовать метод NumberOfTrailingZeros() в Java.

Создайте класс на Java

Создайте класс на Java с именем NumberOfTrailingZerosDemo в каталоге ~/project с использованием следующей команды.

vi ~/project/NumberOfTrailingZerosDemo.java

Добавьте код для метода NumberOfTrailingZeros()

В этом шаге мы добавим код для использования метода NumberOfTrailingZeros() на Java в нашем классе.

public class NumberOfTrailingZerosDemo {

    public static void main(String[] args) {
        int i = 170; // положительное число
        System.out.println("Исходное число равно " + i);
        System.out.println("Двоичное представление равно = " + Integer.toBinaryString(i));
        System.out.println("Количество конечных нулей равно " + Integer.numberOfTrailingZeros(i));

        int j = -57; // отрицательное число
        System.out.println("Исходное число равно " + j);
        System.out.println("Двоичное представление равно = " + Integer.toBinaryString(j));
        System.out.println("Количество конечных нулей равно " + Integer.numberOfTrailingZeros(j));
    }
}

Этот код выведет исходное число, его двоичное представление и количество конечных нулей, следующих за младшим единичным битом.

Компилируйте и запускайте класс на Java

Для компиляции класса выполните следующую команду в терминале.

javac NumberOfTrailingZerosDemo.java

Запуск скомпилированного класса можно выполнить с использованием следующей команды.

java NumberOfTrailingZerosDemo

Вывод программы будет следующим.

Исходное число равно 170
Двоичное представление равно = 10101010
Количество конечных нулей равно 1
Исходное число равно -57
Двоичное представление равно = 11111111111111111111111111000111
Количество конечных нулей равно 0

Пример ввода пользователя

Вот пример, который позволяет пользователю ввести число и выводит количество конечных нулей.

Добавьте следующий код в функцию main():

try {
    System.out.println("Введите число ");
    Scanner sc = new Scanner(System.in);
    int i = sc.nextInt();
    System.out.println("Двоичное представление равно = " + Integer.toBinaryString(i));
    System.out.println("Количество конечных нулей равно " + Integer.numberOfTrailingZeros(i));
} catch (Exception e) {
    System.out.println("Некорректный ввод");
}

Компилируйте и запускайте измененный класс на Java

Для компиляции класса выполните следующую команду в терминале.

javac NumberOfTrailingZerosDemo.java

Запуск скомпилированного класса можно выполнить с использованием следующей команды.

java NumberOfTrailingZerosDemo

Вывод программы будет таким:

Введите число
87
Двоичное представление равно = 1010111
Количество конечных нулей равно 0

Протестируйте живой пример

Теперь, когда вы знаете, как работает метод NumberOfTrailingZeros(), вы можете протестировать живой пример, чтобы проверить, сможете ли вы получить похожий вывод.

import java.lang.*;

public class NumberOfTrailingZerosDemo {
    public static void main(String[] args) {
            int i = 500; // 2 конечных нуля
            System.out.println("Число выглядит так: " + i);
            System.out.println("Двоичное представление равно = " + Integer.toBinaryString(i));
            System.out.println("Количество конечных нулей равно " + Integer.numberOfTrailingZeros(i));

            int j = 456; // 2 конечных нуля
            System.out.println("Число выглядит так: " + j);
            System.out.println("Двоичное представление равно = " + Integer.toBinaryString(j));
            System.out.println("Количество конечных нулей равно " + Integer.numberOfTrailingZeros(j));

            int k = -8; // 3 ведущих нуля
            System.out.println("Число выглядит так: " + k);
            System.out.println("Двоичное представление равно = " + Integer.toBinaryString(k));
            System.out.println("Количество нулей за самым правым 1-битом равно " + Integer.numberOfTrailingZeros(k));
    }
}

Выполните вышеуказанный код в терминале, чтобы получить вывод.

javac NumberOfTrailingZerosDemo.java
java NumberOfTrailingZerosDemo

что даст следующий вывод.

Число выглядит так: 500
Двоичное представление равно = 111110100
Количество конечных нулей равно 2
Число выглядит так: 456
Двоичное представление равно = 111001000
Количество конечных нулей равно 2
Число выглядит так: -8
Двоичное представление равно = 11111111111111111111111111111000
Количество нулей за самым правым 1-битом равно 3

Сохраните код на GitHub

Теперь, когда вы успешно написали код для метода NumberOfTrailingZeros(), сохранили его в директорию ~/project/NumberOfTrailingZerosDemo.java и успешно запустили код, важно сохранить его на GitHub для дальнейшего riferimento. Используйте следующие шаги, чтобы отправить код в репозиторий GitHub.

  1. Инициализируйте локальную директорию как репозиторий Git.
git init
  1. Добавьте файлы в свой новый локальный репозиторий. Это подготовит их к первому коммиту.
git add.
  1. Зафиксируйте файлы, которые вы подготовили в своем локальном репозитории.
git commit -m 'first commit'
  1. В командной строке добавьте URL-адрес для удаленного репозитория, куда будет отправлен ваш локальный репозиторий.
git remote add origin <REMOTE_URL>
## Пример
## git remote add origin https://github.com/user/repo.git
  1. Отправьте изменения из вашего локального репозитория на GitHub.
git push origin master

Обновите код на GitHub

Для обновления кода на GitHub следуйте шагам ниже.

  1. Добавьте новые изменения в локальный репозиторий.
git add.
  1. Зафиксируйте файлы, которые вы подготовили в своем локальном репозитории.
git commit -m 'commit message'
  1. Отправьте изменения из вашего локального репозитория на GitHub.
git push origin branch-name

Получение кода из GitHub

Для получения кода, который вы зафиксировали в репозитории GitHub, используйте следующую команду.

git clone <git-repo-url>

Очистите локальную среду

После завершения вашего упражнения вы должны очистить свою среду, удалив созданный и скомпилированный файл.java.

rm ~/project/NumberOfTrailingZerosDemo.java
rm ~/project/NumberOfTrailingZerosDemo.class

Резюме

В этом практическом занятии мы узнали, как использовать метод NumberOfTrailingZeros() в Java. Также рассмотрены примеры с разными входными числами и как изменяется вывод в зависимости от разных входных данных. Мы также изучили, как сохранять код на GitHub.