【发布时间】:2019-01-24 14:07:18
【问题描述】:
性能方面,是使用ArrayLists 存储值列表还是使用String(使用concat/+)更好?直觉上,我认为Strings 的性能会更好,因为它可能会比 ArrayLists 使用更少的开销,但我无法在网上找到任何东西。
此外,条目不会太大(~10)。
【问题讨论】:
-
取决于您对“商店”的含义。商店在哪里?
-
一个数组列表有一系列的桶,每个桶都可以在固定时间内查找。另一方面,需要拆分 10 个术语的字符串,或者撒上正则表达式药水,才能访问单个项目。长话短说,你会用字符串方法做很多跳舞,而数组列表相对较少。
-
也取决于值。一个 pojo 列表(在程序中)比一大串 csv 数据更容易浏览
-
对于 10 个条目,它不会有任何区别 -> 使用最简单和更易读的 -> ArrayList。
-
使用合适的数据结构以便于维护。稍后,如果性能成为问题,则分析代码以查看可以优化的内容。
标签: java string performance arraylist