Java の Integer クラスの rotateLeft メソッド

JavaJavaBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

JavaのrotateLeft()メソッドは、java.langパッケージのIntegerクラスにある組み込みメソッドです。この実験では、整数の2進数に相当するビットを回転させるために使用されるrotateLeft()メソッドの使い方を学びます。つまり、2進数のすべてのビットを左または右に一定の数だけシフトします。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java(("Java")) -.-> java/SystemandDataProcessingGroup(["System and Data Processing"]) java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) 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); //左にvalue回回転
            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進数に相当する表現を取得するために使用されます。

  2. ファイルを保存して、テキストエディタを閉じます。

  3. 以下のコマンドを使用してコードをコンパイルします。

    javac ~/project/RotateLeft.java
  4. 以下のコマンドを使用してコードを実行します。

    java -cp ~/project RotateLeft
  5. 出力では、元の整数の2進数に相当するもの、指定された回数だけ左に回転させた後の新しい数の10進数に相当するもの、および新しい数の2進数に相当するものが表示されるはずです。

ユーザ定義数に対する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); //左にvalue回回転
    
            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. 出力では、元の整数の2進数に相当するもの、指定された回数だけ左に回転させた後の新しい数の10進数に相当するもの、および新しい数の2進数に相当するものが表示されるはずです。

まとめ

この実験では、IntegerクラスのrotateLeft()メソッドを使用して整数の2進数に相当するビットを回転させる方法を学びました。これにより、元の整数の2進数に相当するものと、回転後の新しい数の2進数に相当するものを出力することができます。さまざまな値を実行することで、rotateLeft()メソッドが整数の2進数に相当するすべてのビットを左にシフトする方法を観察することができます。