如何在任何给定点将字符插入字符串? (处理)对

时间:2012-08-22 16:43:33

标签: string insert character processing stringbuffer

我正在尝试使用Processing将字符插入到字符串中。

在阅读完之后,我尝试了以下(我认为是Java)代码:

1: String st = new String("abcde");
2: st = StringBuffer(st).insert(2, "C");


得到以下回应:

the function StringBuffer(String) does not exist 

有没有不同/更简单的方法呢?我需要使用StringBuffer吗?我是一个相当新手的程序员,所以任何帮助都非常感激。

1 个答案:

答案 0 :(得分:2)

好的,所以我一直在看processing 'Extended Language API'并且似​​乎没有开箱即用的功能。

如果查看String类的substring()函数,您将看到一个示例,其中有一个字符串在第2位被切成两部分。然后打印出其他字符他们。这对你有什么帮助吗?

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

进行了测试