在 Java 中将十进制转换为二进制
在 Java 中将十进制转换为二进制有不同的方法。本教程演示了如何在 Java 中将十进制转换为二进制的不同方法。
我们可以使用 Java 中的按位运算符、数组和 Math.pow()
方法将十进制数转换为二进制数。
在 Java 中使用位运算符将十进制转换为二进制
位运算符通常比算术运算符工作得更快。它们还可以用于在 Java 中将十进制转换为二进制。参见示例:
package delftstack;
import java.util.Scanner;
class Delftstack {
public void DecimalToBinary(int number) {
// Size of the integer is 32 bits
for (int x = number - 1; x >= 0; x--) {
int k = number >> x;
if ((k & 1) > 0) {
System.out.print("1");
}
else {
System.out.print("0");
}
}
}
}
public class Decimal_to_Binary {
public static void main(String[] args) {
Delftstack Demo = new Delftstack();
System.out.println("Please enter a number");
Scanner New_Number = new Scanner(System.in);
int number = New_Number.nextInt();
System.out.println("The Input Decimal Number : " + number);
System.out.print("The Output Binary Number : ");
Demo.DecimalToBinary(number);
}
}
上面的代码将输入一个十进制数字并将该数字转换为二进制。查看输出:
Please enter a number
50
The Input Decimal Number : 50
The Output Binary Number : 00000000000011001000000000000000000000000000110010
在 Java 中使用数组将十进制转换为二进制
按照以下步骤使用 Java 中的数组将十进制数转换为二进制数。
-
首先,将数字除以 2 时的余数存储在数组中。
-
接下来,将数字除以二。
-
然后,我们将重复上述步骤,直到数字大于 0。
-
最后,以相反的顺序打印数组。
让我们根据上述步骤尝试一个示例。
package delftstack;
import java.io.*;
import java.util.Scanner;
class Decimal_to_Binary {
static void DecimalToBinary(int number) {
// an array which will store the binary number
int[] Binary_Number = new int[1000];
int x = 0;
while (number > 0) {
// store the remainder in the array
Binary_Number[x] = number % 2;
number = number / 2;
x++;
}
// print the final array in reverse order
for (int y = x - 1; y >= 0; y--)
System.out.print(Binary_Number[y]);
}
public static void main (String[] args) {
System.out.println("Please enter a number");
Scanner New_Number = new Scanner(System.in);
int number = New_Number.nextInt();
System.out.println("The Input Decimal Number :" + number);
System.out.print("The Output Binary Number : ");
DecimalToBinary(number);
}
}
上面的代码将输入一个十进制数字并将该数字转换为二进制。见输出:
Please enter a number
33
The Input Decimal Number :33
The Output Binary Number : 100001
在 Java 中使用 Math.pow()
将十进制转换为二进制
Math.pow()
方法还可以将十进制数转换为二进制数。让我们尝试一个例子。
package delftstack;
import java.io.*;
import java.util.Scanner;
public class Decimal_to_Binary {
static int DecimalToBinary(int number) {
int Binary_number = 0;
int count = 0;
while (number != 0) {
int remainder = number % 2;
double temp = Math.pow(10, count);
Binary_number += remainder * temp;
number /= 2;
count++;
}
return Binary_number;
}
public static void main(String[] args) {
System.out.println("Please enter a number");
Scanner New_Number = new Scanner(System.in);
int number = New_Number.nextInt();
System.out.println("The Input Decimal Number : " + number);
System.out.print("The Output Binary Number : ");
System.out.println(DecimalToBinary(number));
}
}
上面的代码将输入一个十进制数字并将该数字转换为二进制。见输出:
Please enter a number
65
The Input Decimal Number : 65
The Output Binary Number : 1000001
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。