2013-12-12 53 views
0

當使用Integer.toBinaryString()方法將十進制轉換爲二進制時,我的程序會在二進制表示中繼續返回沒有前導0的二進制代碼。我怎樣才能確保零不丟失?例如,如果代碼是:如何將十進制轉換爲二進制並以特定方式對其進行格式化?

String binary = Integer.toBinaryString(84); 

我得到1010100代替01010100

我怎樣才能確保前導零不會消失?

+0

'字符串二進制= Integer.toBinaryString(84)'轉換十進制到ascci二進制不爲二進制。 – Masudul

+0

@Masud - 實際上,它將二進制轉換爲字符。 –

+0

可能重複的[如何獲得0填充二進制表示的整數在Java?](http://stackoverflow.com/questions/4421400/how-to-get-0-padded-binary-representation-of-an -integer-in-java) – devnull

回答

3

可以從Integer.toBinaryString(int i)方法與String.format(String pattern, Object ... args)方法格式化的結果:

String binaryString = Integer.toBinaryString(84); 
String format = String.format("%8s", binaryString).replace(' ', '0'); 
+1

一個整數是32位,這也會顯示前8個0,而他只需要最後一個8. –

+0

我已經更新了答案。 :) –

+0

現在好多了,+1 :) –

相關問題