这段代码是什么意思?
int value;
if (value > 0)
String input = "" + value;
它正在转换value
为字符串。 "" + value
非常相似value.toString()
。这""
意味着编译器正在查找 之后的字符串+
,因此当它value
在该空间中看到时,它会自动调用value.toString()
以生成字符串结果。
String input = "" + value;
value
是整数类型。将它添加到空字符串中 -""
只是使其成为一个字符串。假设value = 3
,那么""+value
将是"3"
编辑:忘了提到String.valueOf(val)
函数,另一种静态实用方法,将几乎所有原始类型转换为String
.
编译器知道如何添加一个带有一些字符串值的整数。所以在代码中宁可直接调用整数到字符串的转换方法。编码器生成一个常量字符串“”(其中没有值),然后调用连接运算符(+)重载方法将整数添加并转换为字符串值。