使用Java将十进制数转换为二进制格式

时间:2016-10-25 19:46:04

标签: java binary

这是对的吗?我试图将其设置为面试问题,并需要正确答案的帮助。如果有人可以看看下面的代码,让我知道这是否是正确的答案,如果还有其他正确答案,而不仅仅是下面的答案,这将是伟大的。

问题是“使用JAVA创建一个将十进制数转换为二进制格式的程序”

package com.java2novice.algos;

public class DecToBin {

    public void showBinaryFormat(int numbers){
        int binaryNo[] = new int[25];
        int indexNo = 0;
        while(number > 0){
            binaryNo[index++] = numbers%2;
            numbers = numbers/2;
        }
        for(int i = indexNo-1;i >= 0;i--){
            System.out.print(binaryNo[i]);
        }
    }

    public static void main(String a[]){
        DecimalToBinary dtb = new DecimalToBinary();
        dtb.showBinaryFormat(25);
    }
}

2 个答案:

答案 0 :(得分:0)

toBinaryString类使用Integer方法可能更容易,例如:

String binaryString = Integer.toBinaryString(someIntValue);

答案 1 :(得分:0)

代码大多是正确的。但是您错误地输入了一些变量名称。例如,当您实际指的是>>> import sys >>> sys.path.extend(['foo-package', 'bar-package']) >>> import spam.blah >>> import spam.grok >>> 时,您输入了config.vm.define "UbuntuServer2" do |server2| server2.vm.box = "ubuntu/trusty64" server2.vm.provider :virtualbox do |vb| vb.customize ["modifyvm", :id, "--cpuexecutioncap", "50"] vb.customize ["modifyvm", :id, "--memory", 'echo -n $($(awk '/MemTotal/' {print $2} /proc/meminfo / 1024 / 4))'] end end 。我已经为你更正了它们:

index

请注意,您的代码只能使用25位无符号整数。

替代解决方案,您可以将indexNo添加到public void showBinaryFormat(int numbers){ int binaryNo[] = new int[25]; int indexNo = 0; while(numbers > 0){ binaryNo[indexNo++] = numbers%2; numbers = numbers/2; } for(int i = indexNo-1;i >= 0;i--){ System.out.print(binaryNo[i]); } } 方法,以便更方便地调用它。或者只是懒惰而是使用static