猿问

为什么一定要加双引号?

在代码行中

editText.setText(firstnum + secondnum + "");

谁能向我解释为什么最后有双引号?


慕桂英4014372
浏览 183回答 4
4回答

SMILET

firstnum 和 secondnum 似乎都是 Float 类型,因此添加它们将导致 Float,setText() 方法采用 String 而不是 Float,当添加 + "" java 时,java 会自动将 2 个 Float 的添加转换为字符串,想想如果你有:editText.setText(5 + " apples");然后java会认为你想要一个字符串“5 apples”,这就是为什么它将字符串之前的int转换为字符串表示,然后将其附加到“apples”。

FFIVE

这是为了强制将您的整数值(的结果firstnum + secondnum)转换为字符串,这setText()需要作为参数。还有setText()一个接受int(您使用的是浮点数,所以无论如何都不是这种情况)但是该 int 将用作字符串资源的 ID,这不是您想要的,因此需要转换为字符串。它也只是更少的打字。它基本上相当于替换:editText.setText(firstnum + secondnum + "");和:editText.setText(String.valueOf(firstnum + secondnum));

拉丁的传说

+ 是一个重载运算符,当它位于两个数字之间时,它将添加它们,但添加“”将使其成为一个字符串

元芳怎么了

setText 想要一个字符串。如果您想从 int 中获取 String ,您可以使用String.valueOf(i)或i+""。
随时随地看视频慕课网APP

相关分类

Java
我要回答