java - 使用 "+"组合两个字符串

标签 java string-concatenation

我有课:

class Employee{...}

然后:

Employee aEmployee = new Employee(...);
int i = 10;
String str = aEmployee + i;

编译时会产生错误,为什么?

编辑: 我没有重写 Employee 类中的 toString() 方法,但如果我尝试这样做:

Employee aEmployee = new Employee(...);
String h = "hello";
String str = aEmployee + h;  

这次就可以了,无论是编译还是运行。

那么:为什么将int变量i改为String变量h后就可以了呢?

最佳答案

aEmployee 不是 String,它是一个 Object

如果不知道您的 Employee 对象是如何设置的,就很难为您提供合适的解决方案,但是......

String str = aEmployee.toString() + i;

将阻止编译器提示,但可能不会给您期望的结果。

您最好尝试使用 Employee 的已知属性来执行此操作

String str = aEmployee.aMethodThatReturnsString() + i;

关于java - 使用 "+"组合两个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12170318/

相关文章:

java - 交叉编译java应用程序

java - 使用 amqp 从队列中多路分解消息以在并行流中处理?

java - onDragOver 不会发生(在 JavaFX 中)

mysql - 为 select 语句添加前缀文本

objective-c - Objective C中的简单字符串连接

java - java封装的要点

excel - 连接索引匹配的多个结果

r - 使用 dplyr 根据其他列的值更改列的内容

java - 为什么字符串输出中会出现空值?

java - 如何让用户配置 war 文件中的文件