java中如何将十进制数字转化成二进制?

如题所述

第1个回答  2022-11-16

如果表达小于2^31-1的正数代码如下:

public void binaryToDecimal(int n){

int t = 0;  //用来记录位数

int bin = 0; //用来记录最后的二进制数

int r = 0;  //用来存储余数

while(n != 0){

r = n % 2;

n = n / 2;

bin += r * Math().pow(10,t);

t++; 

}

System.out.println(bin);

}

使用字符串的拼接(+)来实现大于2^31-1的数,代码如下:

public void binaryToDecimal(int n){

String str = "";

while(n!=0){

str = n%2+str;

n = n/2;

}

System.out.println(str);

}

可以右移后再与0x01进行&运算  得到第一位的数字判断判断它的第几位上是0,第几位上是1,代码如下:

class ByteMove 

{

public static void main(String[] args) 

{

int i = 7;

move(i);

}

static void move(int num){

for(int i= 0;i<6;i++){

System.out.println("第"+(i+1)+"位:" + (num >> i & 0x01));

}

}

}

扩展资料:

在windows下编译java文件、执行:

1、先创建一个txt,更改为test.java。

2、编写代码,为输出为holloword。

3、找到cmd,并进行打开cmd。

4、编译java文件,输入命令为javac test.java。

5、如果没有报错,查看当前目录下是否有class文件产生。

6、执行class文件,在命令输入java test,输出为holloword。

相似回答