2016-11-07 77 views
0

我们如何将整数转换为二进制?我正在学习Java &有下面的代码。有什么建议?谢谢!简单的十进制到二进制的Java

public static int decimalToBinary(int number) { 
int result = 0; 
while(number > 0){ 


    int mod = number % 2; 
    result = result * 1 + mod; 

    number /= 2; 
} 

return result; 
} 
+0

“二元”是什么意思?请显示一些输入样本和预期输出。 –

+0

这里没有小数。输入已经是二进制的。 – EJP

回答

0

这会将它打印到屏幕上,但您可以轻松地将它分配给一个变量。

import java.util.Scanner; 

public class ReversedBinary { 

    public static void main(String[] args) { 
     int number; 

     Scanner in = new Scanner(System.in); 

     System.out.println("Enter a positive integer"); 
     number = in.nextInt(); 

     if (number < 0) { 
      System.out.println("Error: Not a positive integer"); 
     } else { 

      System.out.print("Convert to binary is:"); 
      //System.out.print(binaryform(number)); 
      printBinaryform(number); 
     } 
    } 

    private static void printBinaryform(int number) { 
     int remainder; 

     if (number <= 1) { 
      System.out.print(number); 
      return; // KICK OUT OF THE RECURSION 
     } 

     remainder = number %2; 
     printBinaryform(number >> 1); 
     System.out.print(remainder); 
    } 
} 
0

可以使用Integer.toBinaryString()方法如下,

int n = 100; 
System.out.println(Integer.toBinaryString(n)); 

的Integer.toBinaryString()接受int作为参数,并返回一个字符串,所以你也可以请执行以下操作:

int n=100; 
String s = Integer.toBinaryString(n); 
System.out.println(s);