Java Integer RotateLeft 方法

JavaJavaBeginner
立即练习

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

介绍

Java 的 rotateLeft() 方法是 java.lang 包中 Integer 类的一个内置方法。在本实验中,你将学习如何使用 rotateLeft() 方法,该方法用于旋转整数二进制表示的位,即将二进制数的所有位向左或向右移动一定的位数。


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/output("`Output`") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/user_input("`User Input`") java/SystemandDataProcessingGroup -.-> java/math_methods("`Math Methods`") subgraph Lab Skills java/operators -.-> lab-117740{{"`Java Integer RotateLeft 方法`"}} java/output -.-> lab-117740{{"`Java Integer RotateLeft 方法`"}} java/user_input -.-> lab-117740{{"`Java Integer RotateLeft 方法`"}} java/math_methods -.-> lab-117740{{"`Java Integer RotateLeft 方法`"}} end

在负数上使用 rotateLeft() 方法

  1. RotateLeft.java 文件中,修改 Java 代码以包含一个负数。假设整数为 -10,编写以下代码:

    public class RotateLeft {
        public static void main(String[] args) {
            int n = -10;
            int value = 4;
            System.out.println("Binary equivalent of " + n + " is: " + Integer.toBinaryString(n));
            n = Integer.rotateLeft(n, value); //rotate left value times
            System.out.println("After rotating " + value + " times to the left, the decimal number is: " + n);
            System.out.println("Binary equivalent of the new number is: " + Integer.toBinaryString(n));
        }
    }

    注意toBinaryString 方法用于获取整数的二进制表示。

  2. 保存文件并关闭文本编辑器。

  3. 使用以下命令编译代码:

    javac ~/project/RotateLeft.java
  4. 使用以下命令执行代码:

    java -cp ~/project RotateLeft
  5. 在输出中,你应该会看到原始整数的二进制表示、向左旋转指定次数后的新整数的十进制表示,以及新整数的二进制表示。

为用户自定义的数字使用 rotateLeft() 方法

  1. RotateLeft.java 文件中,修改 Java 代码以接收用户自定义的整数值和要向左旋转的位数。编写如下代码:

    import java.util.Scanner;
    
    public class RotateLeft {
        public static void main(String[] args) {
    
            Scanner input = new Scanner(System.in);
            System.out.print("Enter an integer number: ");
            int n = input.nextInt();
    
            System.out.print("Enter the number of times to rotate the bits to the left: ");
            int value = input.nextInt();
    
            input.close();
    
            System.out.println("Binary equivalent of " + n + " is: " + Integer.toBinaryString(n));
    
            n = Integer.rotateLeft(n, value); //rotate left value times
    
            System.out.println("After rotating " + value + " times to the left, the decimal number is: " + n);
            System.out.println("Binary equivalent of the new number is: " + Integer.toBinaryString(n));
        }
    }
  2. 保存文件并关闭文本编辑器。

  3. 使用以下命令编译代码:

    javac ~/project/RotateLeft.java
  4. 使用以下命令执行代码:

    java -cp ~/project RotateLeft
  5. 当提示时,输入一个整数和要向左旋转的位数。

  6. 在输出中,你应该会看到原始整数的二进制表示、向左旋转指定次数后的新整数的十进制表示,以及新整数的二进制表示。

总结

在本实验中,你学习了如何使用 Integer 类中的 rotateLeft() 方法来旋转整数二进制表示的位,从而能够输出原始整数的二进制表示以及旋转后新整数的二进制表示。通过执行不同的值,你可以观察到 rotateLeft() 方法如何将整数二进制表示的所有位向左移动。

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