java - 什么更有效?将分割字符串存储在数组中,或者每次需要时调用 split 方法

标签 java arrays split

什么会更快,将分割字符串存储到数组中并在我的程序中使用该数组,或者每当我需要一个数组进行迭代时我可以在字符串上调用 .split() 方法吗?

String main = "1,2,3,4,5,6"; 
String[] array = main.split(",");

对比

main.split(",");

何时需要使用输入值?

我意识到,如果我将字符串存储在数组中,可读性会更高。我只想知道 .split() 是否比使用数组花费更多的计算时间。由于 split 方法返回一个包含分割字符串的数组。

一个简单的例子(?)循环来解决这个问题:

for (int i = main.length - 1; i >= 0; i--){}

对比

for (int i = main.split(",") - 1; i >= 0; i--){}

最佳答案

这是一种权衡,就像编程中的大多数此类事情一样。如果只拆分一次并从那时起直接使用数组,则会节省处理时间,但会占用内存。如果每次都进行拆分,则会节省内存,但会牺牲处理时间。

一个是时间效率更高,另一个是空间效率更高。

关于java - 什么更有效?将分割字符串存储在数组中,或者每次需要时调用 split 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60308817/

相关文章:

Java:在方法中用更少的代码分割字符串

java - 如何访问 TreeMap 中的特定元素?

java - jpa删除错误,同时打印更新sql

java - saml 集成 Ruby(IDP) 和 Java(SP)

java - Android - 从 url 下载 JSON 文件

java - 查找二维数组中每一列的最大值

javascript - 如何检查嵌套数组是否包含值?

r - 如何将列表值列拆分为多列?

arrays - 如何基于参数对对象列表进行分类

python - 如何将文本拆分为句子?