Java 如何让toString()返回多行字符串?

Java 如何让toString()返回多行字符串?,java,string,return,tostring,Java,String,Return,Tostring,我正在开发一个程序,它在数组中搜索,找到最小的值,然后打印出跑步者的时间、名字和姓氏 我需要弄清楚的是如何在单独的行中返回这三个值,例如: public String toString() { return String.format( firstName + " " + lastName + " " + Time ); } 这就是我现在拥有的 有没有办法将这三个值分别打印在不同的行上?要将它们打印在不同的行上,您需要添加一个“换行符”,它是“\n”或“\r\n”,具体取决于您所使用

我正在开发一个程序,它在数组中搜索,找到最小的值,然后打印出跑步者的时间、名字和姓氏

我需要弄清楚的是如何在单独的行中返回这三个值,例如:

public String toString() {
    return String.format( firstName + " " +  lastName + " " + Time );
}
这就是我现在拥有的


有没有办法将这三个值分别打印在不同的行上?

要将它们打印在不同的行上,您需要添加一个“换行符”,它是“\n”或“\r\n”,具体取决于您所使用的操作系统

public String toString(){
    return String.format( firstName + "\n" +  lastName + "\n" + Time);
试试这个

public String toString(){ return String.format( firstName + ".%n " + lastName + ".%n " + Time);

新行依赖于OS,OS由
System.getProperty(“line.separator”)定义

因此:

如果使用的是format,则使用带参数的format字符串

  • %s
    =字符串
  • %n
    =新行

%n对于创建新线而言是独立于平台的。
public String toString() {
       String myEol = System.getProperty("line.separator");  
       return String.format( firstName + myEol +  lastName + myEol + Time);
}
String.format("%s%n%s%n%s", firstName, lastName, Time);