Ill*_*lep 221 java stringbuilder
我有一个StringBuilder
对象,
StringBuilder result = new StringBuilder();
result.append(someChar);
Run Code Online (Sandbox Code Playgroud)
现在我想在其中添加一个换行符StringBuilder
.我该怎么做?
result.append("/n");
Run Code Online (Sandbox Code Playgroud)
不行.所以,我正在考虑使用Unicode编写换行符.这会有帮助吗?如果是这样,我该如何添加?
Jay*_*han 481
它应该是
r.append("\n");
Run Code Online (Sandbox Code Playgroud)
但我建议你这样做,
r.append(System.getProperty("line.separator"));
Run Code Online (Sandbox Code Playgroud)
System.getProperty("line.separator")
在java中为您提供依赖于系统的换行符.同样来自Java 7,有一种直接返回值的方法:System.lineSeparator()
Hal*_*lex 19
另一个选择是使用Apache Commons StrBuilder,它具有StringBuilder中缺少的功能.
我创建了类似于 StringBuidler 的原始类,并且可以通过调用方法appendLine(String str) 来追加行。
public class StringBuilderPlus {
private StringBuilder sb;
public StringBuilderPlus(){
sb = new StringBuilder();
}
public void append(String str)
{
sb.append(str != null ? str : "");
}
public void appendLine(String str)
{
sb.append(str != null ? str : "").append(System.getProperty("line.separator"));
}
public String toString()
{
return sb.toString();
}
}
Run Code Online (Sandbox Code Playgroud)
用法:
StringBuilderPlus sb = new StringBuilderPlus();
sb.appendLine("aaaaa");
sb.appendLine("bbbbb");
System.out.println(sb.toString());
Run Code Online (Sandbox Code Playgroud)
安慰:
aaaaa
bbbbb
Run Code Online (Sandbox Code Playgroud)
小智 5
String.format
您还可以在(请参阅)中使用行分隔符java.util.Formatter
,这也是与平台无关的。
IE:
result.append(String.format("%n", ""));
Run Code Online (Sandbox Code Playgroud)
如果您需要添加更多行间距,只需使用:
result.append(String.format("%n%n", ""));
Run Code Online (Sandbox Code Playgroud)
您还可以使用它StringFormat
来格式化整个字符串,并在末尾添加换行符。
result.append(String.format("%10s%n%n", "This is my string."));
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
342437 次 |
最近记录: |