我需要修改这两行代码,以便它们始终返回四位二进制数。
String binary1 = Integer.toBinaryString(t1);
String binary2 = Integer.toBinaryString(t2);
String first1 = binary1.substring(0,0);
String first2 = binary2.substring(0,0);
String second1 = binary1.substring(1,1);
String second2 = binary2.substring(1,1);
String third1 = binary1.substring(2,2);
String third2 = binary2.substring(3,3);
String fourth1 = binary1.substring(4,4);
String fourth2 = binary2.substring(4,4);
是否存在cn控制binary1和binary2
中的位数的方法P.S。 T1和T2是两个用户子服务的输入。
答案 0 :(得分:4)
Integer.toBinaryString(int)
的Javadoc(部分),
此值转换为二进制(基数2)中的ASCII数字字符串,没有额外的前导
0
。
所以,不。您无法使用toBinaryString(int)
控制位数。您可以使用String.format(String, Object...)
之类的
String binary1 = String.format("%4s", Integer.toString(t1, 2))
.replace(' ', '0');
String binary2 = String.format("%4s", Integer.toString(t2, 2))
.replace(' ', '0');