我正在尝试将整数输入转换为二进制字符串,并将它们连接在一起成为一个长字符串。例:
input: 4 5
output: 0100 0101
在签出API并看到
toBinaryString
返回一个字符串后,我确信我的解决方案应该可以,但不能。我的解决方案:
String str = "5 in binary: ";
str.concat(Integer.toBinaryString(5));
要么
String str = "5 in binary: ";
str + Integer.toBinaryString(5);
每一个都将只打印出原始字符串“ 5 in binary:”,而不是“ 5 in binary:0101”。
toBinaryString()
返回一个String值,所以应该可行吗? 最佳答案
因为String是不可变的对象。
因此,str + Integer.toBinaryString(5);
不会更改str
的内容。它只是返回另一个String对象。您需要将新对象分配给str
,如下所示:
str = str + Integer.toBinaryString(5);