在java中的字符串中的指定位置插入

sat*_*sat 2 java string

在我计划应用某些算法之前,想澄清一下,对于这个特定问题,java中是否有更简单的解决方案.

String str ="这是一个测试字符串";

对于上面的字符串,

必须在pos 3处插入 - "---"
必须在pos 6处插入 - "~~~~"

怎么做到这一点?使用stringBuffer,我可以使用API​​,insert(pos,char []);

在第一个循环中,如果我在pos 3处插入,则第二个pos(pos - 6)不再为真,为了第二次获得正确的pos,必须添加之前添加的字符.(即6 + 3 = 9).

一种方法是跟踪我添加的字符.(麻烦)
但是,有没有办法让我可以继续插入指定位置的原始文本,然后制作它的联盟或类似的!(基本上是一种更好的方法)?

例如"这是一个测试字符串"
第一个循环 - Thi --- s是一个测试字符串
第二个循环 - 这个我~~~~测试字符串

最后o/p要求是Thi --- si ~~~~ sa测试字符串.

这是更大问题的一部分,在我接近之前,想澄清一下.

MBy*_*ByD 8

我不确定这是你在找什么,但你可以从最后开始,这样索引仍然是真的:

e.g. "This is a test string"
1st loop- This i~~~~s a test string
                ^index 6
2nd loop- Thi---s i~~~s a test string
             ^index 3
Run Code Online (Sandbox Code Playgroud)

我发现在修改数组时也很方便......


Apo*_*sia 5

怎么样倒退?首先插入最大的索引.