Introduction
The rotateRight()
method is useful for performing bit manipulations on binary data. Specifically, it rotates the binary digits of a number to the right by a specified number of bits. This can be useful for performing bitwise operations on integers or converting between binary and decimal numbers. In this lab, we will explore how to use this method to rotate a number of different integers and examine the results.
Import Required Packages
In this first step, we need to import the required package to use the rotateRight()
method. For this, we will use the java.lang
and java.util
packages.
import java.lang.*;
import java.util.*;
This package contains the Scanner
class which we need for taking user input.
Define the Main Class
In this step, we will define the RotateRight
class and the main()
method.
public class RotateRight {
public static void main(String[] args) {
// Code to be added here
}
}
Define the Variables
In this step, we will define the required variables for our program.
public class RotateRight {
public static void main(String[] args) {
int n1 = 8;
int n2 = -8;
int val = 3;
// Code to be added here
}
}
We have defined three variables n1
, n2
, and val
. These variables will be used for performing bit rotating operations in later steps.
Output Binary Equivalent
In this step, we will output the binary equivalent of both numbers n1
and n2
by using the Integer.toBinaryString()
method.
public class RotateRight {
public static void main(String[] args) {
int n1 = 8;
int n2 = -8;
int val = 3;
System.out.println("Binary equivalent of n1: " + Integer.toBinaryString(n1));
System.out.println("Binary equivalent of n2: " + Integer.toBinaryString(n2));
}
}
Here, we are using the Integer.toBinaryString()
method to convert integers into binary format and then printing them using the System.out.println()
method.
Perform Bit Rotating Operation
In this step, we will use the rotateRight()
method to perform bit rotating operations.
public class RotateRight {
public static void main(String[] args) {
int n1 = 8;
int n2 = -8;
int val = 3;
System.out.println("Binary equivalent of n1: " + Integer.toBinaryString(n1));
for (int i = 0; i < val; i++) {
n1 = Integer.rotateRight(n1, val);
System.out.println(n1);
}
System.out.println("Binary equivalent of n2: " + Integer.toBinaryString(n2));
for (int i = 0; i < val; i++) {
n2 = Integer.rotateRight(n2, val);
System.out.println(n2);
}
}
}
The above code has two for
loops to perform bit rotation operations on both numbers. We have used the rotateRight()
method along with the number to be rotated and the number of positions to rotate.
Take User Input to Perform Bit Rotation
In this step, we will take user input through the command line and perform bit rotating operations based on user input.
public class RotateRight {
public static void main(String[] args) {
try {
System.out.println("Enter the value and distance");
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int val = sc.nextInt();
System.out.println("Binary equivalent is : " + Integer.toBinaryString(n));
for (int i = 0; i < val; i++) {
n = Integer.rotateRight(n, val);
System.out.println(n);
}
} catch (Exception e) {
System.out.println("Invalid Input");
}
}
}
Here, we have taken user input through the scanner object sc
nextInt()
method. Then, bit rotating operations will be performed as per user inputs.
Compile and Run the Program
To compile and run the program, we can use the following command in the terminal:
javac RotateRight.java && java RotateRight
Summary
In this lab, we learned how to perform bit rotating operations in Java using the Integer.rotateRight()
method. We started by importing the required packages, defining the main class, and user-defined variables. We output the binary equivalent of the given input numbers and then performed bit rotating operations based on user input. Finally, we compiled and ran the program and checked the output.
π Practice Now: Java Integer rotateRight Method
Want to Learn More?
- π³ Learn the latest Java Skill Trees
- π Read More Java Tutorials
- π¬ Join our Discord or tweet us @WeAreLabEx
Top comments (0)