Java 连接字符串时出错

Java 连接字符串时出错,java,Java,为什么会出现错误和意外的返回值 public class Person { String name; public Person(String personName) { name = personName; } public String greet(String yourName) { return String.format("Hi " + %s + ", my name is" + %s, name, yourName); } } %s应嵌入字符

为什么会出现错误和意外的返回值

public class Person {
 String name;

public Person(String personName) {
        name = personName;
}

public String greet(String yourName) {
        return String.format("Hi " + %s + ", my name is" + %s, name, yourName);
 }
}

%s应嵌入字符串中,且不应以加号分隔,例如:

return String.format("Hi %s, my name is %s", name, yourName);
你也可以这样做:

return "Hi " + name + ", my name is " + yourName;

String.format
需要一个字符串(第一个参数)作为格式化结果的“指南”

第一个参数的格式不正确,因为%s在字符串指南之外

试试这个:

return String.format( "Hi %s, my name is %s", name, yourName );
您不需要执行
“++%s+”
只需执行
”(您好%s,我的名字是%s),name,yourName)