【问题标题】: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); 
    

    如果您使用格式,则使用带参数的格式字符串。

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

    【讨论】:

      【解决方案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);
          

          【讨论】:

          • .%n 独立于平台创建新行。
          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2013-03-29
          • 1970-01-01
          • 1970-01-01
          • 2015-02-25
          • 2012-12-18
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多