2012-01-26 11 views
0

intから変換されたバイナリが4,8,12 ... 10進数で表示されるようにするにはどうすればよいですか?バイナリ用のJava 4の小数点以下の桁数

0000 
0001 
0010 
0011 
0100 
0101 
0110 

Plsのアドバイスなどの

..あなたは、あなたのコードは、すべてのアーキテクチャで同じように実行されることを確認することができますので、

public int binary(int n) 
{ 

if (add > count) 
{ 
    System.out.println("break"); 
    return 0; 
} 
else 
{ 

    sb=Integer.toBinaryString(add); 
    num = Integer.parseInt(sb); 
    add++; 
} 
while (sb.length()%2==0) 

{ temp = sb; 
    sb = ""; 
    sb = "0" + temp; 
} 
    System.out.println(sb); 
    return binary(add); 
} 
+0

ゼロを埋め込む方法を尋ねていますか? – Kal

+0

私はあなたがここで何を求めているか正確にはわかりません – Alex

+0

バイナリのdec 0の結果表示は "0"です。私は "0000"にしたいと思います.... dec 12のバイナリは "00011000" "1100"の代わりに – knn

答えて

0

これはあなたが欲しいですか?

String s = Integer.toBinaryString(yourInt); 
     for (int i = 1; i <= s.length() % 4; i++) { 
      s = "0" + s; 
     } 
+0

はい、ありがとう! – knn

0

これよりずっと簡単です。値がちょうど5ビット長であり、最上位ビットがドロップされていることを確認してください。

String s = Integer.toBinaryString(n & 0xF | 0x10).substring(1); 
+0

と書いてありますが、私もそれをテストします。 – knn

関連する問題