java - 拥有一个字符串,替换然后执行拆分或拥有一组字符串并创建一个新的字符串来更改它会更有效吗?

标签 java arrays performance replace split

在为 ProcessBuilder.command 方法准备参数时,我尚未决定应该做什么。 方法 1 肯定更快,但我在这里寻找最好的效率。

方法一:

String test = "ls | grep $name -option";
test = test.replace("$name",textField.getText());
new ProcessBuilder.command(test.split(" "));

方法2:

String[] test = { "ls", "|", "grep", "$name", "-option" };
String[] newTest = { test[0], test[1], test[2], textField.getText(), test[4] };
new ProcessBuilder.command(newTest);

最佳答案

第二种方法在整体性能上会更高效(因为replace方法实现和split方法调用)。

但在这种情况下,执行时间不会有显着差异。

关于java - 拥有一个字符串,替换然后执行拆分或拥有一组字符串并创建一个新的字符串来更改它会更有效吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61944814/

相关文章:

testing - 应用程序 'indicate/numerate' 性能的最佳方法是什么?

JAVA java.util.ConcurrentModificationException :null Exception

java - Oracle - 如何正确执行事务?

java - (int) Math.sqrt(n) 比 (int) Math.floor(Math.sqrt(n)) 慢很多

c - 数组结构排序 - C

performance - Kolmogorov – 滤波器 Matlab

c++ - Cuda Thrust - 如何使用 sort_by_key、merge_by_key 和 reduce_by_key 优化代码

java - 将数组映射到对象

arrays - 删除不同索引中具有相同成员的列表

javascript - 数组仍为空