我想使用 StringBuffer类而不是 String类,但我找不到任何方法来替换 StringBuffer类之类的所有字符的出现 String class 到 replace()方法。
以下代码:
class Ram{
public static void main(String args[]){
StringBuffer sb=new StringBuffer("Hello my dear ,Hello,Hello,Hello");
sb.replace(1,3,"Java");
System.out.println(sb);//prints HJavalo
}
}
输出: HJavalo亲爱的,你好,您好,你好
我是java编程的新手,我想知道是否有任何方法或技术用 java 替换所有 Hello 。谢谢
答案 0 :(得分:3)
首先,如果你想使用一个可变的yScale(0)
对象来获得更好的连接等,你可能需要String
,而不是StringBuilder
(除非你的代码操纵它是多线程,但我怀疑它,给出了这个例子)。
其次,在这种情况下,您最好使用StringBuffer
或String#replace
,这实际上是由String#replaceAll
调用的。
以下是优化代码的样子:
String#replace
<强>输出强>
StringBuilder sb=new StringBuilder(
"Hello my dear ,Hello,Hello,Hello"
.replace("Hello", "Java")
);
System.out.println(sb);