在Java中,如何更有效地追加字符串? [复制]

2024-02-09

我写了一个Java程序,我需要在其中附加一个字符串

" u13a2"到现有的"u1234 u12de u1386 ... u15a3".

渐渐地,绳子变得越来越长。我发现每次追加所花费的时间也变得越来越长。有什么办法可以在一定程度上改善这一点吗?

我想到的实施包括:

unicodeArray += " "+unicode;

or

unicodeArray = unicodeArray.concat(" "+unicode);

他们给出了相似的表现。我认为造成这些糟糕表现的主要原因是特殊类型String。它为每个分配创建一个新对象。如果您也这么认为,这是否意味着我最好使用另一种类型,例如字节数组?


您应该使用字符串生成器 http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/StringBuilder.html class.

StringBuilder stringBuilder = new StringBuilder();

stringBuilder.append("Some text");
stringBuilder.append("Some text");
stringBuilder.append("Some text");

String finalString = stringBuilder.toString();

此外,请访问:

  • 《Java 如何使用 StringBuilder 优化代码?》 https://stackoverflow.com/questions/4645020/when-to-use-stringbuilder-in-java
  • “Java 中 toString() 中的 StringBuilder 与字符串连接” https://stackoverflow.com/questions/1532461/stringbuilder-vs-string-concatenation-in-tostring-in-java
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在Java中,如何更有效地追加字符串? [复制] 的相关文章

  • 如何配置 Spring-WS 以使用 JAXB Marshaller?

    感谢您到目前为止对此的帮助 我正在更新问题 因为我没有显示我需要的所有内容 并显示了建议的更改 肥皂输出仍然不是我想要的 servlet xml
  • 在命令行java中突出显示文本[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一项任务是重新创建 unix cal 程序 除了一部分之外 相当简单 今天 它突出显示了该数字 我不知道该怎么做 关于如何在 Ja
  • 项目缺少所需的注释处理库

    我的 Eclipse IDE 突然在问题视图中显示 xxxx 项目缺少所需的注释处理库 xxxx M2 REPO 中的一些旧 jar 我用谷歌搜索 没有找到任何答案 为什么我的项目使用旧的 jar 以及错误来自哪里 To remove th
  • 具有 CRUD 功能的基于 Spring Web 的管理工具

    在 PHP Symfony 世界里有一个工具叫 Sonata Adminhttps sonata project org https sonata project org 基于 AdminLTE 模板 这是一款一体化管理工具 具有登录 菜单
  • 根据重复值对 PHP 数组进行排序

    我有一个包含重复值的数组 我想对数组进行排序 以便重复次数最多的值出现在行中的第一个 这是我的数组的示例 array 1 2 3 2 1 2 2 我想对该数组进行排序 以便它根据重复项的数量对自身进行排序 如下所示 array 2 1 3
  • 在 Java 中创建 T 的新实例

    在C 中 我们可以定义一个泛型class A
  • 正则表达式在 Velocity 模板中不起作用

    我在 Test java 中尝试过这个 String regex lt s br s s gt String test1 lt br gt System out println test replaceAll regex 但是当我在速度模板
  • LocalDate 减去 period 得到错误的结果

    LocalDate减去一个Period 如 28年1个月27天 得到错误的结果 但减去一个Period 只有天单位 如 10282 天 得到正确的结果 有什么需要注意的吗 public static void main String arg
  • 从 HttpClient 3 转换为 4

    我已经成功地对所有内容进行了更改 但以下内容除外 HttpClient client HttpPost method client new DefaultHttpClient method new HttpPost url InputStr
  • 是否有最新的 Facebook Java SDK? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 好像没找到最近更新的 如果没有 是否有一个好的 Java 库来执行与 Facebook 的 API 交
  • 多线程——更快的方法?

    我有一堂有吸气剂的课程getInt 和一个二传手setInt 在某个领域 比如说领域 Integer Int 一个类的一个对象 比如说SomeClass The setInt 这里是同步的 getInt isn t 我正在更新的值Int来自
  • JAXB 编组器无参数默认构造函数

    我想从 java 库中编组一个 java 对象 当使用 JAXB marschaller 编组 java 对象时 我遇到了一个问题 A 类没有无参数默认构造函数 我使用Java Decompiler来检查类的实现 它是这样的 public
  • 在循环中按名称访问变量

    我正在开发一个 Android 项目 并且有很多可绘制对象 这些绘图的名称都类似于icon 0 png icon 1 png icon 100 png 我想将这些可绘制对象的所有资源 ID 添加到整数 ArrayList 中 对于那些不了解
  • Android项目中使用java获取电脑的IP地址

    我在用ksoap2 android http code google com p ksoap2 android 我需要使用java获取IP地址 这样我就不必每次都手动输入它 我所说的 IP 地址是指 例如 如果我这样做ipconfig使用命
  • 从浏览器访问本地文件?

    您好 我想从浏览器访问系统的本地文件 由于涉及大量安全检查 是否可以通过某种方式实现这一目标 或使用 ActiveX 或 Java Applet 的任何其他工作环境 请帮帮我 要通过浏览器访问本地文件 您可以使用签名的 Java Apple
  • 如何清理 Runtime.exec() 中使用的用户输入?

    我需要通过命令行调用自定义脚本 这些脚本需要很少的参数并在 Linux 机器上调用 当前版本容易出现各种shell注入 如何清理用户给出的参数 参数包括登录名和路径 Unix 或 Windows 路径 用户应该能够输入任何可能的路径 该路径
  • 如何对字符串列表进行排序?

    在 Python 中创建按字母顺序排序的列表的最佳方法是什么 基本回答 mylist b C A mylist sort 这会修改您的原始列表 即就地排序 要获取列表的排序副本而不更改原始列表 请使用sorted http docs pyt
  • 为什么我不能将 Collection 转换为 Collection>

    问题的关键是 为什么这会导致编译时错误 List
  • @Embeddable 中的 @GenerateValue

    我已将实体的 id 分离到一个单独的 Embeddable 类中 该实体如下 Entity Table name users public class Users EmbeddedId private Users pk id private
  • 使用 AmazonSNSClient 发送短信时的授权

    aws 官方文档如何发送短信 http docs aws amazon com sns latest dg sms publish to phone html使用 java 中的 aws SDK 非常简单 但是 当发送如底部示例所示的消息时

随机推荐

  • 如何在运行时修改我的 App.exe.config 键?

    在我的 app config 中我有这个部分
  • CRAN 包提交 - R CMD 检查

    我正在构建一个想要提交给 CRAN 的包 我完成了 R CMD 检查 使用 devtools check 并确保在构建我的包 devtools build 之前修复所有错误 警告和注释 然后将生成的 tar gz 文件提交到 CRAN 然而
  • 单元测试、黑盒测试和白盒测试[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 什么是单元测试 黑盒测试和白盒测试 我用谷歌搜索 但我发现的所有解释都非常技术性 任何人都可以用适当的例子以简单的方式回答这个问题吗
  • Laravel 4:如果帖子不存在,则使用控制器重定向页面 - 尝试过但到目前为止失败

    我正在使用 Laravel 4 我有一个显示帖子的页面 例如example com posts 1 显示数据库中的第一篇文章 我想要做的是 如果有人尝试访问不存在的网址 则将页面重定向到索引 例如如果没有帖子编号 6 则 example c
  • 将函数包装在同一文件中

    我需要你的建议来包装我现有的功能 我来自测试团队 我需要编写单元测试用例 所以我不想依赖原始定义 所以尝试编写我自己的定义 以下是不应更改的源代码 来源 c include
  • 从 Windows 窗体迁移到 WPF...值得吗?

    我还有一个用 Windows 窗体编写的中等大小的桌面应用程序 由数据库中的 46 个表支持的几十个主要窗体 我正在考虑在 WPF 中重写 UI 但在我去那里之前 我很好奇是否有任何关于进行此类转换的战争故事 I use LLBLGen h
  • .Net 4 的 MiscUtil 会有更新吗?

    我想知道MiscUtil http www yoda arachsys com csharp miscutil 如果我没记错的话 由 Jon Skeet 维护 NET 4 是否会有更新 或者代码现在是否已移至其他地方 我的意思是 解决方案类
  • 在 Qt 中如何将 QVariant 转换为 QString,反之亦然?

    如何将 QVariant 转换为 QString 反之亦然 Thanks 从字符串 QString qs QVariant qv qs 至字符串 QString qs qv toString 提示 阅读help http doc qt io
  • Java 中是否有一个类可以对一周中的当地时间进行编码?

    我想制定一个一周一周的时间表 因为每周的时间表都是相同的 所以我需要存储的唯一信息是星期几及其发生的时间 例如 Monday 2 30pm 实际日期并不重要 时区也不重要 到目前为止 我一直在编写将日期和时间分开的代码 使用DayOfWee
  • SAAgent.class 上的 Proguard 错误

    我正在开发一个Samsung Gear与三星的应用程序accessory v1 0 0 jar 当我尝试创建签名的 apk 执行 proguard 步骤 时 我得到Unknown verification type 10 in stack
  • 将 simpleAdapter 与列表视图的图像一起使用

    我在使用简单适配器将图像放入列表视图时遇到了一些问题 我从我的在线服务器 亚马逊 获取图像 根据用户 ID 下载图像后 我尝试在列表视图中设置它们 但没有显示任何内容 也没有发生错误 下面是我的代码 looping through All
  • django图像存储cdn

    过去几个月我一直在使用rackspace CDN 以及 django imagekit 和 django cumulus 我对结果并不满意 由于超时等原因 我似乎收到了很多错误 File www django test1 omu2 src
  • 是什么导致 EXE 的大小变大?

    我的可执行文件大小为 364KB 它没有使用 Vector2D 类 因此我使用重载运算符实现了一个 我改变了我的大部分代码 point x point2 x point y point2 y to point point2 这导致我删除了近
  • 使用 WebClient 的 Silverlight 后台线程

    我正在使用一个WebClient从我的网络服务异步获取信息 wc DownloadStringCompleted DownloadStringCompleted wc DownloadStringAsync service 我工作得很好 但
  • React-Native 最低 Android API 级别

    我正在对react native和android进行一些研究 有谁知道android的最低api级别react native支持吗 我搜索了他们的文档页面 但找不到它 支持的操作系统 gt Android 4 1 API 16 和 gt i
  • DiffUtil.Callback 未按预期工作

    我正在使用 DiffUtil ItemCallback 和 ListAdapter 来更新 RecyclerView 它运行得很好 但它的行为有些让我困扰 根据文档 areContentsTheSame仅当以下情况时才应该调用方法areIt
  • `ValueError: 太多值无法用 `scipy.stats.linregress` 解包(预期为 4)`

    我知道这个错误消息 ValueError too many values to unpack expected 4 当设置的变量数量多于函数返回的值时 就会出现 scipy stats linregress根据 scipy 文档返回 5 个
  • 在哪里可以学习对数? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我在编程环境中经常听到对数的提及 它们似乎可以解决许多问题 但我似乎无法找到使用它们的现实方法 我读过
  • Twilio IBM Watson Speech To Text Addon 回调功能未触发

    我的目标是使用 Twilio 平台上提供的 IBM Watson Speech to Text Addon Twilio 附加功能 进行转录 呼叫者的输入 IVR 对话 IBM Watson 语音转文本插件已安装 Problem 回调 UR
  • 在Java中,如何更有效地追加字符串? [复制]

    这个问题在这里已经有答案了 我写了一个Java程序 我需要在其中附加一个字符串 u13a2 到现有的 u1234 u12de u1386 u15a3 渐渐地 绳子变得越来越长 我发现每次追加所花费的时间也变得越来越长 有什么办法可以在一定程