JavaRush /Java 博客 /Random-ZH /Java 8 中的 StringBuilder 类及其实际示例
Нина Можарская
第 17 级
Киев

Java 8 中的 StringBuilder 类及其实际示例

已在 Random-ZH 群组中发布
该类String创建不可变字符串。这意味着如果您对字符串应用任何操作或对字符串进行操作,结果将是一个新字符串。如果这个新字符串没有分配给任何变量,则操作结果将丢失。因此,对此类字符串的操作必然导致新字符串的创建。这意味着额外的内存和处理器时间成本。如果对字符串有很多操作,那么使用由类实现的动态字符串通常会更有效StringBuilder
Java 8 中的 StringBuilder 类及其实际示例 - 1
考虑下面的代码:
String s = "Some text";
int count = 100;
for(int i = 0; i<100;i++){
   s+=i;
}
**********************
StringBuilder s = new StringBuilder(110);
int count = 100;
s.append("Some text");
for(int i = 0;i<count;i++){
s.append(i);
}
上面的代码解决了同样的问题。当我们向给定字符串添加 100 个新子字符串时。第一个示例使用该类来实现此目的String,但效率不高,因为每次添加子字符串都会导致构造新对象String。这是对内存和时间的额外浪费。在第二个示例中,使用 类 解决了这个问题StringBuilder。我们预先创建一个类的对象StringBuilder,然后使用append我们的方法通过更改创建的对象的内容来形成我们需要的字符串StringBuilder,但无需重新创建对象本身。
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION