使用 intelliJ 将字符串串联重构为 StringBuilder

2024-04-12

我被指定对一个项目进行重构,我遇到了这种情况

 this.path = DESTINY + deploy.name() + FILE_SEPARATOR + delivery.getSystem().getCode()
      + FILE_SEPARATOR + delivery.getName() + FILE_SEPARATOR + delivery.getEnviroment().getName();

我想将其重构为这样的:

StringBuilder tmpPath = new StringBuilder();
tmpPath.append(DESTINY);
tmpPath.append(deploy.name());
tmpPath.append(FILE_SEPARATOR);
tmpPath.append(delivery.getSystem().getCode());
tmpPath.append(FILE_SEPARATOR);
tmpPath.append(delivery.getName());
tmpPath.append(FILE_SEPARATOR);
tmpPath.append(delivery.getEnviroment().getName());
this.path = tmpPath.toString();

Or

StringBuilder path = new StringBuilder();

...

this.path.append(DESTINY);
this.path.append(deploy.name());
this.path.append(FILE_SEPARATOR);
this.path.append(delivery.getSystem().getCode());
this.path.append(FILE_SEPARATOR);
this.path.append(delivery.getName());
this.path.append(FILE_SEPARATOR);
this.path.append(delivery.getEnviroment().getName());

最快的方法是什么?


Just hit Alt + Enter when having cursor on your original code:

然后您可以选择您最喜欢的变体,例如用 String Builder 替换它。 IDEA 将为您完成所有工作。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 intelliJ 将字符串串联重构为 StringBuilder 的相关文章

随机推荐

  • C++ 内联字符串流

    我想用std stringstream创建格式化字符串 但使用内联类 所以我没有stringstream局部变量到处乱飞 我的意思是这样的 include
  • 使用 PHP 从网页中提取特定数据[重复]

    这个问题在这里已经有答案了 可能的重复 PHP 中的 HTML 抓取 https stackoverflow com questions 34120 html scraping in php 我想知道是否有任何方法可以从网页获取特定的文本字
  • Firestore 规则:resource.data.keys() 不包含读取中的所有字段

    设置 我在 Firebase Firestore 中有一个集合 其中包含以下字段 active created description displayName expires image type uid userName where ex
  • 什么是谓词调度

    我最近看到很多关于 Clojure 中谓词分派的讨论 想知道这件事是否有什么意义 换句话说 什么是谓词分派以及它与泛型函数 OOP 多态性和模式有何不同 谢谢 谓词分派包含泛型函数 OOP 多态性 模式匹配等 一个好的概述是谓词调度 统一的
  • Coldfusion onCFCRequest 将 XML 的返回类型更改为 WDDX

    我的客户群终于不再使用 Coldfusion 8 所以现在我可以利用 Coldfusion 9Application cfc gt onCFCRequest事件 我有一个测试场景设置 但结果不是我所期望的 我有一个我调用的方法 它会产生一个
  • AngularJS 角度种子启动项目添加指令

    我正在尝试使用角度种子项目 https github com angular angular seed https github com angular angular seed 开始一个新项目 我正在尝试添加一个新指令 创建了 testD
  • PyQt4 中的多列(可能使用 QTreeWidget)

    我正在尝试让 QTreeWidget 的工作方式与此完全相同 在Python中 我不关心多个选项卡 而是关心多个列 这就是我到目前为止所得到的 我不知道如何拥有多个标题 self pointListBox QtGui QTreeWidget
  • Visual Studio 2010 的替代 unistd.h 头文件

    我正在编译代码Visual Studio 2010其中包括头文件unistd h 由于windows不支持头文件unistd h 我正在寻找替代头文件 或者有什么方法可以自定义它 以便我也可以在 Visual Studio 中编译它 尝试包
  • 与构造函数同名的方法 - 为什么?

    为什么允许以下内容 public class Foo public Foo public void Foo 将方法命名为与类相同的名称是否有正当理由 我的猜测是 它是被允许的 因为明确禁止它会给 Java 的标识符命名规则添加另一个要求 但
  • 如何检查 Windows 应用商店应用程序中是否存在文件?

    还有其他方法可以检查 Windows 应用商店应用程序中是否存在文件吗 try var file await ApplicationData Current LocalFolder GetFileAsync Test xml no exce
  • if 块内 std::lock_guard 的范围

    目前正在研究关于std mutex并希望得到一些帮助 如果我有一个看起来像这样的代码 if returnBoolValue std lock guard
  • 页面刷新后如何保持div隐藏?

    我有一个简单的显示和隐藏 div 该 div 在加载页面时自动加载 然后您可以通过单击关闭来关闭该 div 一旦刷新页面 div 就会再次显示 我如何将其编码为一旦关闭 就不会再打开一个月 提前致谢 Ben 这是我到目前为止的代码
  • 在 0.19 中将自定义 HTML 与 elmreactor 或其他开发服务器结合使用

    As 这个答案 https stackoverflow com a 41366859 7943564显示可以在 Elm 0 18 中运行elm reactor如果此代码段包含在 HTML 文件中 则使用自定义 HTML 文件 然而 在 0
  • 验证 Android 应用链接失败并出现错误 1024

    我有一个带有 applicationId 的 Android 应用程序com unibeam passkey1 At https unibeam github io well known assetlinks json 我存储了以下文件 r
  • 在 Scala 中处理 monad 时出错?尝试与验证

    scalaz Validation据说比Trymonad 因为它会累积错误 有没有什么场合你可以选择Try over scalaz Validation or scalaz 支持的最重要论据Try是它在标准库中 这也是used在标准库中 例
  • Gradle 依赖项导致错误“无效的幻数”

    我在 GitHub 上有一个项目 我在家里的办公室都在做这个项目 大约两个月来 两台机器都运行良好 然后两周前 它停止在我的家用电脑上运行 但是在我的工作电脑上仍然可以正常工作 这是我得到的错误 app shrinkDebugMultiDe
  • Swift CloudKit SaveRecord“保存记录时出错”

    我正在尝试将记录保存到 CloudKit 但收到错误 我在其他地方看到这是一个需要知道如何保存的问题 但我无法让它发挥作用 var database CKDatabase CKContainer defaultContainer publi
  • 以编程方式更改 UITableView 的大小

    我正在尝试显示服务器上 mysql 数据库中的数据 我正在将数据加载到表中 问题是 我不希望这些数据成为视图上的唯一内容 我希望该表与其他内容共享 理想情况下 我希望表格能够随着单元格的数量而增长和扩展 因此 如果有 3 个单元格 我希望它
  • 如果处理后台消息,firebase_messaging flutter 插件会在启动时崩溃

    我综合了firebase messaging v5 1 6 https pub dev packages firebase messaging使用我的 flutter 应用程序 如自述文件中提到的 处理后台消息 选项 这是我的文件的外观 我
  • 使用 intelliJ 将字符串串联重构为 StringBuilder

    我被指定对一个项目进行重构 我遇到了这种情况 this path DESTINY deploy name FILE SEPARATOR delivery getSystem getCode FILE SEPARATOR delivery g