stringbuilder相关内容

为什么使用 StringBuilder?StringBuffer 可以与多个线程以及一个线程一起使用吗?

假设我们的应用程序只有一个线程.而我们正在使用 StringBuffer 那么有什么问题呢? 我的意思是如果StringBuffer可以通过同步处理多个线程,那么单线程工作有什么问题? 为什么要改用 StringBuilder? 解决方案 StringBuffers 是线程安全的,意味着它们有同步的方法来控制访问,因此只有一个线程可以访问 StringBuffer 对象的同步一 ..

Java:String concat vs StringBuilder - 优化了,我该怎么办?

在 this answer 中,它说(暗示)字符串连接无论如何都优化为 StringBuilder 操作,所以当我写我的代码,有什么理由在源代码中编写 StringBuilder 代码吗?请注意,我的用例与 OP 的问题不同,因为我正在连接/附加数十万行. 为了让自己更清楚:我很清楚它们之间的差异,只是我不知道是否值得真正编写 StringBuilder 代码,因为它的可读性较差,而且它的表 ..
发布时间:2022-01-22 10:58:56 Java开发

替换字符串中的字符的有效方法(java)?

我正在编写一个小的 JAVA 程序: 将文本作为字符串 需要 2 个字符数组 我尝试做的事情听起来像是“查找和替换",但它不一样,所以我认为清除它很重要. 无论如何,我想获取此文本,查找第一个数组中的任何字符是否与文本中的字符匹配,如果是,则将其替换为第二个字符数组中的匹配字符(根据索引). 我会用一个例子来解释:假设我的文本(字符串)是:“java 很棒!";我有 2 ..
发布时间:2022-01-12 20:23:20 Java开发

在 F# 中使用 StringBuilder 是否正确?

StringBuiler 是一个可变对象,F# 鼓励尽可能多地使用不变性.所以应该使用转换而不是突变.在 F# 中构建字符串时,这是否适用于 StringBuilder?有 F# 不可变的替代品吗?如果是这样,这种替代方法是否有效? 片段 解决方案 我认为在 F# 中使用 StringBuilder 非常好 - sb.Append 返回StringBuilder 的当前实例意味着它可 ..
发布时间:2022-01-05 09:52:17 其他开发

为什么 \n 和 (String)System.getProperty("line.separator");行为不同?

我的程序接受一个文本文件的输入,其中每个单词都由换行符分隔,我的程序接受它并处理数据,然后我需要输出到一个新文件,同时保持控制台输出. 现在我想知道为什么当我将 "\n" 附加到我的 stringBuilder 时,它会打印出来,因为它在控制台中有一个新行,但在文件输出中,它不会将它作为一个新行line 并将所有单词放在一行中. 当我使用 newLine 时,它​​只会在我的控制台输出和我 ..
发布时间:2022-01-04 08:28:12 Java开发

当我们已经有了 StringBuilder 时,为什么要使用 StringJoiner?

我最近遇到了一个 Java 8 类 StringJoiner 它使用分隔符添加字符串并为其添加前缀和后缀,但我无法理解此类的需要,因为它也使用 StringBuilder 在后端,也执行非常简单的追加操作字符串. 我是否因为没有真正理解这门课的真正目的而错过了什么? 解决方案 StringJoiner 非常有用,当你需要在 Stream 中加入 Strings 时. 例如,如果 ..
发布时间:2021-12-28 09:02:14 Java开发

替换字符串中字符的有效方法(java)?

我正在编写一个小型 JAVA 程序,它: 将文本作为字符串 接受 2 个字符数组 我尝试做的事情听起来像是“查找和替换",但事实并非如此,所以我认为清除它很重要. 无论如何,我想获取此文本,查找第一个数组中的任何字符是否与文本中的字符匹配,如果匹配,则将其替换为第二个字符数组中的匹配字符(根据索引). 我会用一个例子来解释:假设我的文本(字符串)是:“java 太棒了!" ..
发布时间:2021-12-25 09:08:20 Java开发

使用 StringBuilder 追加

我有 5 个复选框,我必须选择多个复选框. 我做了一个这样的代码来检查复选框是否被选中: sports=(CheckBox)findViewById(R.id.sports_btn);体育.setOnClickListener(新的OnClickListener(){@覆盖public void onClick(View v) {如果 (sports.isChecked() == true ..
发布时间:2021-12-23 08:31:27 移动开发

如何明智地使用 StringBuilder?

我对使用 StringBuilder 类有点困惑,首先: string 对象连接操作总是从现有的 string 和新数据创建一个新对象.StringBuilder 对象维护一个缓冲区以容纳新数据的串联.如果空间可用,新数据将附加到缓冲区的末尾;否则,分配一个新的更大的缓冲区,将原始缓冲区中的数据复制到新缓冲区,然后将新数据附加到新缓冲区. 但是创建 StringBuilder 实例以避 ..
发布时间:2021-12-21 10:16:59 C#/.NET

有趣的 OutOfMemoryException 与 StringBuilder

我需要在循环中不断构建大字符串并将它们保存到数据库中,该数据库目前偶尔会产生 OutOfMemoryException. 这里的基本情况是我使用 XmlWriter 和基于一些数据的 StringBuilder 创建一个字符串.然后我从外部库调用一个方法,将这个 xml 字符串转换为其他字符串.之后,转换后的字符串将保存到数据库中.对于不同的数据,整个过程在循环中重复完成大约 100 次. ..
发布时间:2021-12-21 10:07:44 C#/.NET

创建了多少对象

我正在讨论 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 ..
发布时间:2021-12-11 19:54:44 Java开发

String.Join 与 StringBuilder:哪个更快?

在上一个关于格式化double[][] 转 CSV 格式,有人建议使用 StringBuilder 会比 String.Join 更快.这是真的吗? 解决方案 简短回答:视情况而定. 长答案:如果您已经有要连接在一起的字符串数组(使用分隔符),String.Join 是最快的方法. String.Join 可以查看所有字符串以计算出所需的确切长度,然后再次复制所有数据.这意味着将没 ..
发布时间:2021-12-08 11:26:40 C#/.NET

何时使用 StringBuilder?

可能的重复: String vs StringBuilder 我刚刚重温了一些我用来学习 VB.NET 的书.我不确定我的脑子里是否有这个,了解 StringBuilder 是如何/什么是. 使用指南是什么?如果要连接 2 个字符串或 50 个字符串,最好使用它吗? 或者当总字符串长度大于 128 个字符时? 或者,当您使用它来将字符串相加在一起时,您是否会看到性能优势? ..
发布时间:2021-12-06 10:12:15 其他开发

有 String 时为什么是 StringBuilder?

我第一次遇到 StringBuilder 并且很惊讶,因为 Java 已经有一个非常强大的 String 类允许附加. 为什么要使用第二个 String 类? 在哪里可以了解有关 StringBuilder 的更多信息? 解决方案 String 不允许追加.您在 String 上调用的每个方法都会创建一个新对象并返回它.这是因为 String 是不可变的——它不能改变它的内部状 ..
发布时间:2021-11-25 14:24:47 Java开发

字符串、StringBuffer 和 StringBuilder

请告诉我一个实时情况来比较String、StringBuffer和StringBuilder? 解决方案 可变性差异: String 是不可变的,如果您尝试更改它们的值,则会创建另一个对象,而 StringBuffer 和 StringBuilder 是可变的,因此它们可以更改其值. 线程安全差异: StringBuffer 和 StringBuilder 的区别在于 S ..
发布时间:2021-11-25 13:33:40 Java开发