【发布时间】:2019-01-16 16:01:26
【问题描述】:
我正在处理一个遗留代码库,它到处都引用了java.util.Vector。我收到声纳错误,告诉我用ArrayList 替换它。由于引用无处不在,我想采取所有必要的预防措施来避免将 Vector 替换为 ArrayList 可能出现的任何问题。
我找不到任何关于此的信息(可能是因为它是一个非常古老的问题,而且大多数人至少在十年前就已经过了这个问题)。我应该注意什么?由于向量是线程安全的,有什么更简单的方法来替换它而不引起线程问题(如果有的话)?
仅供参考,这是一个网络项目,并没有明确使用多线程。
【问题讨论】:
-
有人刚刚在这里发布了一些与 ArrayList 相关的答案stackoverflow.com/questions/54220769/…
-
好吧,
Vector上的 JavaDoc 声明:“如果不需要线程安全实现,建议使用 ArrayList 代替 Vector。” - 如果您不确定是否需要线程安全实现,我会坚持使用 Vector 并告诉 Sonar 接受。
标签: java