当前位置: 首页 > 面试题库 >

什么时候首选StringBuilder而不是将String附加到String?

冯茂实
2023-03-14
问题内容

以下是两种附加方法String

String firstString = "text_0";
String secondString = "text_1";
String resultString = firstString + secondString;

StringBuilder sb = new StringBuilder();
sb.append(firstString).append(secondString);
String resultString = sb.toString();

我的问题是-什么时候使用更有效StringBuilder?假设有10个字符串,我需要创建其中一个。


问题答案:

因为StringBuilder可以“附加”一个字符串,而不是每次创建一个新对象时都串联两个字符串。即使对字符串使用+
=运算符,也会创建一个新对象。仅当您尝试连接大量字符串时,此优点才变得重要。If也被认为更具可读性。



 类似资料:
  • 问题内容: 流式XML解析器(例如SAX和StAX)比构建像DOM解析器之类的树结构的解析器更快,内存效率更高。SAX是推送分析器,这意味着它是观察者模式(也称为侦听器模式)的实例。SAX首先出现,然后是StAX- 拉式解析器,这意味着它基本上像迭代器一样工作。 您可以找到在任何地方都偏爱StAX而不是SAX的原因,但是通常可以归结为:“更易于使用”。 在JAXP上的Java教程中,StAX被模糊

  • 这篇文章主要介绍了String、StringBuffer、StringBuilder的区别详细教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下。放假在家里休息,闲来无事,想巩固巩固自己的基础知识。 Java中提供了两个类String和StringBuffer,它们用于储存和操作字符串

  • 本文向大家介绍String 和 StringBuffer、StringBuilder 的区别是什么?相关面试题,主要包含被问及String 和 StringBuffer、StringBuilder 的区别是什么?时的应答技巧和注意事项,需要的朋友参考一下 可变性 简单的来说:String 类中使用 final 关键字修饰字符数组来保存字符串,,所以 String 对象是不可变的。而StringBuil

  • 问题内容: 我是第一次遇到,很惊讶,因为Java已经具有一个非常强大的类,可以追加。 为什么要上第二堂课? 在哪里可以了解更多信息? 问题答案: 不允许附加。你在上调用的每个方法都会创建一个新对象并返回它。这是因为String它是不可变的-无法更改其内部状态。 另一方面是可变的。调用时,它会更改内部char数组,而不是创建新的字符串对象。 因此,拥有: 而不是,这将创建500个新的字符串对象。 请

  • 抱歉,如果这是一个天真的问题,但我已经看了谷歌员工的一系列谈话,仍然不明白为什么我会使用AE而不是CF? 如果我理解正确的话,这两种服务的整体概念都是构建“微服务架构”。 CF和AE都是无状态的 两者都应该在有限的时间内执行 两者都可以与dbs和其他gcp api交互。 然而,AE必须封装到自己的服务器中。基本上,它在与CF相同的功能基础上利用了许多复杂性。那么,我应该什么时候使用它来代替CF呢?

  • 问题内容: 这一直使我感到困惑。看起来这样会更好: 比这个: 是否有特定原因? 问题答案: 这是因为任何可迭代对象都可以连接(例如,列表,元组,字典,集合),但是其内容和“连接器” 必须是 字符串。 例如: 使用字符串以外的其他东西会引发以下错误: