さて、私は「拡張言語API」の処理を見てきましたが、そのような機能はそのままではないようです。
Stringクラスのsubstring()関数を見ると、2番目の位置で2つに切断され、その間に他の文字が印刷されたStringがある例がわかります。それはさらにあなたを助けますか?
String str1 = "CCCP";
String str2 = "Rabbit";
String ss1 = str1.substring(2); // Returns "CP"
String ss2 = str2.substring(3); // Returns "bit"
String ss3 = str1.substring(0, 2); // Returns "CC"
println(ss1 + ":" + ss2 + ":" + ss3); // Prints 'CP:bit:CC'
あなたの例をとると、これは正しい位置に「C」を挿入します:
String st = new String("abcde");
String p1 = st.substring(0,2); // "ab"
String p2 = st.substring(2); // "cde"
st = p1 + "C" + p2; // which will result in "abCcde"
または、そのための関数を作成します。気をつけてください、超堅牢ではありません(空の文字列、オーバーフローなどのチェックはありません)が、仕事をします:
String insert(original, toInsert, position){
String p1 = original.substring(0,position);
String p2 = original.substring(position);
return p1 + toInsert + p2;
}
...
String st = new String("abcde");
st = insert(st, "C", 2); // "abCcde"
st = insert(st, "D", 4); // "abCcDde"
http://sketch.processing.orgでテスト済み