假设您有以下内容:
String cake = "whatever";
int cakeNumber = 509;
String whyNot = "another string";
double number = 1;
system.out.println("I like "+ cake +" and I eat " + cakeNumber + " blah blah prolonging this string because " + whyNot + " and so on " + number + ".");
Run Code Online (Sandbox Code Playgroud)
所以,这没有多大意义,也没有必要,因为它只是一个例子.我的问题是这个,给定多个字符串和变量,它们之间带有"加号",看起来就像一团糟.是不是有办法格式化这个println或者通过减少加号来整理它?
java.lang.StringBuilderSystem.out.println(new StringBuilder("I like")
.append(cake)
.append(" and I eat ")
.append(cakeNumber)
.append(" blah blah prolonging this string because ")
.append(whyNot)
.append(" and so on ")
.append(number)
.append(".")
.toString());
Run Code Online (Sandbox Code Playgroud)
java.text.MessageFormatSystem.out.println(MessageFormat.format("I like {0} and I eat {1} blah blah prolonging this string because {2} and so on {3}.",
cake, cakeNumber, whyNot, number));
Run Code Online (Sandbox Code Playgroud)
我喜欢静态导入,如下所示:
import static java.text.MessageFormat.format;
System.out.println(format("I like {0} and I eat {1} blah blah prolonging this string because {2} and so on {3}.",
cake, cakeNumber, whyNot, number));
Run Code Online (Sandbox Code Playgroud)
java.util.Formatter(也称为String.format)System.out.printf("I like %s and I eat %d blah blah prolonging this string because %s and so on %f.%n",
cake, cakeNumber, whyNot, number);
Run Code Online (Sandbox Code Playgroud)
你可以在这里找到很多语法选择(只是列出一些,可能还有更多):
System.out.format(...)
System.out.printf(...)
System.out.print(String.format(...)) // you will need to include the line break in the format
System.out.println(String.format(...)) // line break will be caused by println()
import static java.lang.String.format;
System.out.print(format(...))
System.out.println(format(...))
System.out.println(new Formatter().format(...))
Run Code Online (Sandbox Code Playgroud)
%n表示系统的特定换行符.这是必需的,因为printf在操作后不会自动插入换行符.
System.out.println("I like " + cake + " and I eat " +
cakeNumber + " blah blah prolonging this string because" +
whyNot + " and so on " + number + ".");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2579 次 |
| 最近记录: |