将字符串文字分解为多行

6

有没有一种方法可以在Java中将一行代码分解成多行,而仍然保持连续阅读?

public String toString() {

  return String.format("BankAccount[owner: %s, balance: %2$.2f,\
    interest rate: %3$.2f,", myCustomerName, myAccountBalance, myIntrestRate);
  }

当我将上面的代码放在一行中时,一切都正常工作,但是当我尝试将其分散到多行时,它就无法工作。

在Python中,我知道您可以使用\开始在新行上打字,但在执行时将其打印为一行。

以下是Python示例以澄清。在Python中,这将使用反斜杠或()打印为一行:

print('Oh, youre sure to do that, said the Cat,\
 if you only walk long enough.')

用户会看到以下内容:
Oh, youre sure to do that, said the Cat, if you only walk long enough.

有类似的Java方式可以实现吗?谢谢!

在Java中没有办法做到那样。你所能做的最好方法是使用+将其连接在同一行上。 - Louis Wasserman
你不能使用多行字符串字面值。但是,如果格式在多行之间连接,则仍然可以使用String.format。 - Louis Wasserman
@Louis Wasserman,由于String常量表达式的结果,在类文件中只会得到一个String字面量。这实际上是一个多行String字面量,你同意吗? - Lew Bloch
@Rajith Pemabandu,“concat字符串与/n”将不会在String中嵌入换行符。那个建议是错误的。 - Lew Bloch
我没有提到包含换行符的字符串,那是另一个人说的。 - Lew Bloch
显示剩余3条评论
2个回答

9
使用+操作符来在新行上分割字符串是可行的。
public String toString() {
    return String.format("BankAccount[owner: %s, balance: "
            + "%2$.2f, interest rate:"
            + " %3$.2f]", 
            myCustomerName, 
            myAccountBalance, myIntrestRate);
}

示例输出:BankAccount [所有者:TestUser,余额:100.57,利率:12.50]


2
由于仅涉及String字面量和常量的多行字符串添加被存储为类文件中的单个字面量,因此它正好实现了所要求的功能。非常好的答案。 - Lew Bloch
@LewBloch,感谢您的解释和进一步澄清。 - Devendra Lattu
谢谢大家!现在我更清楚了,也理解了!感谢澄清! - ProFesh
@ProFesh,您可以随时为您认为有帮助的答案点赞并接受它。谢谢:D - Devendra Lattu

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接