【问题标题】:How can I have toString() return a multi-line string?如何让 toString() 返回多行字符串?
【发布时间】:2014-12-16 23:29:53
【问题描述】:
我正在开发一个程序,该程序在数组中搜索并找到最小值,然后打印出跑步者的时间、名字和姓氏。
我需要弄清楚的是如何在不同的行上返回三个值,例如:
public String toString() {
return String.format( firstName + " " + lastName + " " + Time );
}
这就是我现在所拥有的
有没有办法将三个值打印在不同的行上?
【问题讨论】:
标签:
java
string
return
tostring
【解决方案1】:
String.format("%s%n%s%n%s", firstName, lastName, Time);
如果您使用格式,则使用带参数的格式字符串。
【解决方案2】:
新行取决于System.getProperty("line.separator");定义的操作系统
所以:
public String toString() {
String myEol = System.getProperty("line.separator");
return String.format( firstName + myEol + lastName + myEol + Time);
}
【解决方案3】:
要将它们打印在不同的行上,您需要添加一个“换行符”,即“\n”或“\r\n”取决于您所在的操作系统。
public String toString(){
return String.format( firstName + "\n" + lastName + "\n" + Time);
【解决方案4】:
试试这个
public String toString(){ return String.format( firstName + ".%n " + lastName + ".%n " + Time);