指定二进制转换中的位数

时间:2016-06-04 13:25:32

标签: java

我试图将数字作为二进制字符串存储在特定长度为4位的数组中。 例如,如果我需要将4位存储为0,我需要一个像" 0000"这样的字符串。

For 1  -> "0001".
For 2  -> "0010".
For 3  -> "0011".
For 15 -> "1111".

怎么做? 如何将每个字符存储在长度为4的数组中?

1 个答案:

答案 0 :(得分:2)

这个片段可以解决问题:

String.format("%4s", Integer.toBinaryString(i)).replace(' ', '0'));

即:

  • Integer.toBinaryString(i)将i的值打印为二进制
  • String.format将格式化该结果,添加左对齐,直到获得4位字符串...

实施例

for (int i = 0; i <= 15; i++) {
    System.out.println(String.format("%4s", Integer.toBinaryString(i)).replace(' ', '0'));
}