【发布时间】:2010-10-29 11:22:31
【问题描述】:
如果参数太多,String.format 很容易变得过于混乱。有没有更强大的方法来格式化字符串。像这样:
"This is #{number} string".format("number" -> 1)
或者这不可能是因为类型问题(我认为format 需要使用 Map[String, Any];不知道这是否会使事情变得更糟)。
或者是这样更好的方法:
val number = 1
<plain>This is { number } string</plain> text
即使它污染了命名空间?
编辑:
虽然在许多情况下可能会进行简单的拉皮条,但我也在寻找与 Python 的 format() 相同方向的东西(参见:http://docs.python.org/release/3.1.2/library/string.html#formatstrings)
【问题讨论】:
-
FWIW,我不同意一个人需要处于
String.format有太多参数的情况。使用两个或多个字符串;与+连接。但是,如果有人花时间为那些更喜欢这种风格而不是 C 风格的人克隆 python 格式,那当然会很好。 -
当然,应用程序并不多,但有时您只想将模板字符串外部化,然后我认为优势显而易见。或者对于国际化的东西(虽然我不知道是否即使是 Python 格式也足够强大)。
-
但是Java不应该已经有了这样的东西吗?
-
@Always-Asking(来自suggested edit):发布此问题时,这些标签可能不存在;不过,添加确实有意义。
标签: string scala formatting string-formatting