非常基本的问题,但很难进入可接受的形式:
我想通过每隔3个空格插入一个填充来转换字符串
"123456789" - >"123 456 789"
"abcdefgh" - >"abc def gh"
我的代码目前是
public String toSpaceSeparatedString(String s) {
if (s == null || s.length() < 3) {
return s;
}
StringBuilder builder = new StringBuilder();
int i;
for (i = 0; i < s.length()-3; i += 3) {
builder.append(s.substring(i, i+3));
builder.append(" ");
}
builder.append(s.substring(i, s.length()));
return builder.toString();
}
Run Code Online (Sandbox Code Playgroud)
谁能提供更优雅的解决方案?
wja*_*ans 10
您可以使用正则表达式执行此操作:
"abcdefgh".replaceAll(".{3}", "$0 ")
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11181 次 |
| 最近记录: |