stringbuilder相关内容
假设我们的应用程序只有一个线程.而我们正在使用 StringBuffer 那么有什么问题呢? 我的意思是如果StringBuffer可以通过同步处理多个线程,那么单线程工作有什么问题? 为什么要改用 StringBuilder? 解决方案 StringBuffers 是线程安全的,意味着它们有同步的方法来控制访问,因此只有一个线程可以访问 StringBuffer 对象的同步一
..
以下是添加 String 的两种方法: String firstString = "text_0";字符串 secondString = "text_1";字符串结果字符串 = 第一个字符串 + 第二个字符串;StringBuilder sb = new StringBuilder();sb.append(firstString).append(secondString);字符串结果字符串 =
..
在 this answer 中,它说(暗示)字符串连接无论如何都优化为 StringBuilder 操作,所以当我写我的代码,有什么理由在源代码中编写 StringBuilder 代码吗?请注意,我的用例与 OP 的问题不同,因为我正在连接/附加数十万行. 为了让自己更清楚:我很清楚它们之间的差异,只是我不知道是否值得真正编写 StringBuilder 代码,因为它的可读性较差,而且它的表
..
字符串池是否驻留在堆上?如果是,字符串字面量是否符合垃圾回收条件? 当使用 new String("abc") 时,我们知道它在堆上创建了一个对象,并将字符串字面量放入字符串池中.所以我的第二个问题是:
..
我正在编写一个小的 JAVA 程序: 将文本作为字符串 需要 2 个字符数组 我尝试做的事情听起来像是“查找和替换",但它不一样,所以我认为清除它很重要. 无论如何,我想获取此文本,查找第一个数组中的任何字符是否与文本中的字符匹配,如果是,则将其替换为第二个字符数组中的匹配字符(根据索引). 我会用一个例子来解释:假设我的文本(字符串)是:“java 很棒!";我有 2
..
我试图理解为什么 String 和 Stringbuilder/StringBuffer 在用作 Hashmap 键时会被区别对待.让我通过以下插图更清楚地说明我的困惑: 示例 #1,使用字符串: String s1 = new String("abc");字符串 s2 = new String("abc");HashMap hm = new HashMap();hm.put(s1, 1)
..
StringBuiler 是一个可变对象,F# 鼓励尽可能多地使用不变性.所以应该使用转换而不是突变.在 F# 中构建字符串时,这是否适用于 StringBuilder?有 F# 不可变的替代品吗?如果是这样,这种替代方法是否有效? 片段 解决方案 我认为在 F# 中使用 StringBuilder 非常好 - sb.Append 返回StringBuilder 的当前实例意味着它可
..
我的程序接受一个文本文件的输入,其中每个单词都由换行符分隔,我的程序接受它并处理数据,然后我需要输出到一个新文件,同时保持控制台输出. 现在我想知道为什么当我将 "\n" 附加到我的 stringBuilder 时,它会打印出来,因为它在控制台中有一个新行,但在文件输出中,它不会将它作为一个新行line 并将所有单词放在一行中. 当我使用 newLine 时,它只会在我的控制台输出和我
..
我需要向 StringBuilder 添加一些行,最后添加的行应该在字符串的开头,最旧的在结尾.我添加这样的新行: stringBuilder.Insert(0, "Some text." + Environment.NewLine); 完成后,我像这样清空 StringBuilder: stringBuilder.Clear(); 我多次重复使用同一个 StringBuilder,随着时
..
我最近遇到了一个 Java 8 类 StringJoiner 它使用分隔符添加字符串并为其添加前缀和后缀,但我无法理解此类的需要,因为它也使用 StringBuilder 在后端,也执行非常简单的追加操作字符串. 我是否因为没有真正理解这门课的真正目的而错过了什么? 解决方案 StringJoiner 非常有用,当你需要在 Stream 中加入 Strings 时. 例如,如果
..
我正在编写一个小型 JAVA 程序,它: 将文本作为字符串 接受 2 个字符数组 我尝试做的事情听起来像是“查找和替换",但事实并非如此,所以我认为清除它很重要. 无论如何,我想获取此文本,查找第一个数组中的任何字符是否与文本中的字符匹配,如果匹配,则将其替换为第二个字符数组中的匹配字符(根据索引). 我会用一个例子来解释:假设我的文本(字符串)是:“java 太棒了!"
..
我有 5 个复选框,我必须选择多个复选框. 我做了一个这样的代码来检查复选框是否被选中: sports=(CheckBox)findViewById(R.id.sports_btn);体育.setOnClickListener(新的OnClickListener(){@覆盖public void onClick(View v) {如果 (sports.isChecked() == true
..
我对使用 StringBuilder 类有点困惑,首先: string 对象连接操作总是从现有的 string 和新数据创建一个新对象.StringBuilder 对象维护一个缓冲区以容纳新数据的串联.如果空间可用,新数据将附加到缓冲区的末尾;否则,分配一个新的更大的缓冲区,将原始缓冲区中的数据复制到新缓冲区,然后将新数据附加到新缓冲区. 但是创建 StringBuilder 实例以避
..
我需要在循环中不断构建大字符串并将它们保存到数据库中,该数据库目前偶尔会产生 OutOfMemoryException. 这里的基本情况是我使用 XmlWriter 和基于一些数据的 StringBuilder 创建一个字符串.然后我从外部库调用一个方法,将这个 xml 字符串转换为其他字符串.之后,转换后的字符串将保存到数据库中.对于不同的数据,整个过程在循环中重复完成大约 100 次.
..
我正在讨论 Java 中 String 和 StringBuffer 的用法.这两个示例中的每一个都创建了多少个对象? 例 1: String s = "a";s = s + "b";s = s + "c"; 例 2: StringBuilder sb = new StringBuilder("a");sb.append("b");sb.append("c"); 在我看来,Ex 1
..
在上一个关于格式化double[][] 转 CSV 格式,有人建议使用 StringBuilder 会比 String.Join 更快.这是真的吗? 解决方案 简短回答:视情况而定. 长答案:如果您已经有要连接在一起的字符串数组(使用分隔符),String.Join 是最快的方法. String.Join 可以查看所有字符串以计算出所需的确切长度,然后再次复制所有数据.这意味着将没
..
可能的重复: String vs StringBuilder 我刚刚重温了一些我用来学习 VB.NET 的书.我不确定我的脑子里是否有这个,了解 StringBuilder 是如何/什么是. 使用指南是什么?如果要连接 2 个字符串或 50 个字符串,最好使用它吗? 或者当总字符串长度大于 128 个字符时? 或者,当您使用它来将字符串相加在一起时,您是否会看到性能优势?
..
假设我在 C# 中有一个 stringbuilder 来执行此操作: StringBuilder sb = new StringBuilder();字符串 cat = "cat";sb.Append("the ").Append(cat).(" in the hat");字符串 s = sb.ToString(); 这是否与拥有一样有效或更有效: string cat = "cat";str
..
我第一次遇到 StringBuilder 并且很惊讶,因为 Java 已经有一个非常强大的 String 类允许附加. 为什么要使用第二个 String 类? 在哪里可以了解有关 StringBuilder 的更多信息? 解决方案 String 不允许追加.您在 String 上调用的每个方法都会创建一个新对象并返回它.这是因为 String 是不可变的——它不能改变它的内部状
..
请告诉我一个实时情况来比较String、StringBuffer和StringBuilder? 解决方案 可变性差异: String 是不可变的,如果您尝试更改它们的值,则会创建另一个对象,而 StringBuffer 和 StringBuilder 是可变的,因此它们可以更改其值. 线程安全差异: StringBuffer 和 StringBuilder 的区别在于 S
..