Método Reverse de Inteiro em Java

JavaBeginner
Pratique Agora

Introdução

Em Java, o método reverse() é usado para retornar o valor obtido pela inversão da ordem dos bits da representação binária de complemento de dois do valor inteiro passado. Neste laboratório, aprenderemos como usar o método reverse(), e o implementaremos em alguns exemplos.

Escreva o programa de exemplo

Escreva o seguinte bloco de código para implementar o programa de exemplo:

import java.lang.Integer;

public class IntegerReverse {
    public static void main(String[] args) {
        int positiveValue = 202;
        int negativeValue = -50;

        System.out.println("Original Positive Number:" + positiveValue);
        System.out.println("Binary Representation:" + Integer.toBinaryString(positiveValue));
        System.out.println("Number after reversal:" + Integer.reverse(positiveValue));

        System.out.println("\nOriginal Negative Number:" + negativeValue);
        System.out.println("Binary Representation:" + Integer.toBinaryString(negativeValue));
        System.out.println("Number after reversal:" + Integer.reverse(negativeValue));
    }
}

Nesta etapa, aprendemos a importar o pacote java.lang.Integer para nossa classe. Definimos duas variáveis inteiras e atribuímos valores a elas.

Usando o método toBinaryString(), convertemos esses valores em seus números binários, chamando-o dentro do método System.out.println(). Em seguida, chamamos o método reverse() nessas duas variáveis para obter sua representação binária invertida.

Compile e execute o programa

Compile e execute o programa executando o seguinte comando no terminal.

javac IntegerReverse.java && java IntegerReverse

A saída terá esta aparência:

Original Positive Number:202
Binary Representation:11001010
Number after reversal:1392508928

Original Negative Number:-50
Binary Representation:11111111111111111111111111001110
Number after reversal:1946157055

Implemente o programa definido pelo usuário

Agora, escreveremos um programa definido pelo usuário, que recebe um int como entrada do usuário e retorna a saída do método reverse(). Escreva o seguinte bloco de código:

import java.util.Scanner;

public class IntegerReverse {
    public static void main(String[] args) {
        try {
            Scanner scanner = new Scanner(System.in);
            System.out.print("Enter any integer value: ");
            int inputValue = scanner.nextInt();

            System.out.println("Original Number:" + inputValue);
            System.out.println("Binary Representation:" + Integer.toBinaryString(inputValue));
            System.out.println("Number after reversal:" + Integer.reverse(inputValue));
        } catch (Exception e) {
            System.out.println("Invalid Input");
        }
    }
}

Neste programa, usamos a classe Scanner para obter a entrada do usuário. Imprimimos uma mensagem para o usuário pedindo que ele insira qualquer valor inteiro. Depois de obter o valor de entrada, imprimimos o número original, bem como sua representação binária. Finalmente, aplicamos o método reverse() ao valor de entrada e imprimimos o resultado.

Compilar e executar o programa

Compile e execute o programa executando o seguinte comando no terminal.

javac IntegerReverse.java && java IntegerReverse

Você verá a seguinte saída:

Enter any integer value: 78
Original Number:78
Binary Representation:1001110
Number after reversal:1912602624

Testar o programa com entrada inválida

Agora, teste o programa inserindo entradas inválidas (como valores não inteiros).

Enter any integer value: abcd
Invalid Input

Esta mensagem indica que o valor de entrada não era um valor inteiro válido.

Resumo

Neste laboratório, aprendemos como usar o método reverse() em Java para reverter a representação binária de um valor inteiro. Implementamos dois exemplos, um exemplo fornecido e um exemplo definido pelo usuário para ilustrar o uso deste método. Usamos a classe Scanner para obter o valor de entrada do usuário.