相关疑难解决方法(0)

在Java中以字为单位包装多个字符后的字符串

我有这个代码:

    String s = "A very long string containing " +
                   "many many words and characters. " +
                   "Newlines will be entered at spaces.";

    StringBuilder sb = new StringBuilder(s);

    int i = 0;
    while ((i = sb.indexOf(" ", i + 20)) != -1) {
        sb.replace(i, i + 1, "\n");
    }

    System.out.println(sb.toString());
Run Code Online (Sandbox Code Playgroud)

代码的输出是:

A very long string containing
many many words and
characters. Newlines
will be entered at spaces.
Run Code Online (Sandbox Code Playgroud)

上面的代码将字符串包装在每30个字符的下一个空格之后,但我需要将字符串包装在每30个字符的前一个空格之后,就像它的第一行一样:

A very long string

第二行将是

containing many
Run Code Online (Sandbox Code Playgroud)

请给出一些适当的解决方案

java

17
推荐指数
2
解决办法
4万
查看次数

标签 统计

java ×1