Java 整数反转方法

JavaJavaBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

介绍

在 Java 中,reverse() 方法用于返回通过反转传递的整数值的二进制补码表示的位顺序所获得的值。在本实验中,我们将学习如何使用 reverse() 方法,并通过一些示例来实现它。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("`Java`")) -.-> java/BasicSyntaxGroup(["`Basic Syntax`"]) java(("`Java`")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["`Object-Oriented and Advanced Concepts`"]) java(("`Java`")) -.-> java/SystemandDataProcessingGroup(["`System and Data Processing`"]) java/BasicSyntaxGroup -.-> java/operators("`Operators`") java/BasicSyntaxGroup -.-> java/variables("`Variables`") java/BasicSyntaxGroup -.-> java/if_else("`If...Else`") java/BasicSyntaxGroup -.-> java/output("`Output`") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/user_input("`User Input`") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/exceptions("`Exceptions`") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/wrapper_classes("`Wrapper Classes`") java/SystemandDataProcessingGroup -.-> java/string_methods("`String Methods`") subgraph Lab Skills java/operators -.-> lab-117736{{"`Java 整数反转方法`"}} java/variables -.-> lab-117736{{"`Java 整数反转方法`"}} java/if_else -.-> lab-117736{{"`Java 整数反转方法`"}} java/output -.-> lab-117736{{"`Java 整数反转方法`"}} java/user_input -.-> lab-117736{{"`Java 整数反转方法`"}} java/exceptions -.-> lab-117736{{"`Java 整数反转方法`"}} java/wrapper_classes -.-> lab-117736{{"`Java 整数反转方法`"}} java/string_methods -.-> lab-117736{{"`Java 整数反转方法`"}} end

编写示例程序

编写以下代码块来实现示例程序:

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));
    }
}

在这一步中,我们学习了如何将 java.lang.Integer 包导入到我们的类中。我们定义了两个整数变量并为其赋值。

通过调用 toBinaryString() 方法,我们将这些值转换为它们的二进制表示,并在 System.out.println() 方法中输出。然后,我们对这两个变量调用 reverse() 方法,以获取它们的二进制反转表示。

编译并运行程序

在终端中执行以下命令来编译并运行程序。

javac IntegerReverse.java && java IntegerReverse

输出结果将如下所示:

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

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

实现用户自定义程序

现在我们将编写一个用户自定义程序,该程序从用户那里获取 int 类型的输入,并返回 reverse() 方法的输出。编写以下代码块:

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");
        }
    }
}

在这个程序中,我们使用了 Scanner 类来获取用户的输入。我们向用户打印了一条消息,要求他们输入任意整数值。获取输入值后,我们打印了原始数字及其二进制表示。最后,我们对输入值应用了 reverse() 方法并打印了结果。

编译并运行程序

在终端中执行以下命令来编译并运行程序。

javac IntegerReverse.java && java IntegerReverse

你将看到以下输出:

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

使用无效输入测试程序

现在通过输入无效值(例如非整数值)来测试程序。

Enter any integer value: abcd
Invalid Input

此消息表明输入值不是有效的整数值。

总结

在本实验中,我们学习了如何在 Java 中使用 reverse() 方法来反转整数值的二进制表示。我们实现了两个示例,一个提供的示例和一个用户自定义的示例,以说明该方法的使用。我们使用了 Scanner 类来获取用户的输入值。

您可能感兴趣的其他 Java 教程