矢量是一个过时的集合

时间:2015-05-16 12:56:30

标签: java vector obsolete

  

检查报告java.util.Vector或java.util.hashtable的任何用法。虽然仍然受到支持,但这些类已被JDK 1.2 Collection类淘汰,并且可能不应该在新的开发中使用....

我有一个Java项目,它使用无处不在,而我正在使用最新的JDK 8。我想知道我是否可以在最新的java上运行该应用程序。

并告诉我是否可以使用其他关键字为ArrayList,例如Vector for new java。

1 个答案:

答案 0 :(得分:7)

首先,虽然Vector大部分已被ArrayList淘汰,但使用起来仍然完全合法,而且您的项目运行得很好。

但是,如上所述,不建议使用。主要原因是它的所有方法都是synchronized,这通常是无用的,可能会大大减慢您的应用程序。任何未在方法范围之外共享的局部变量都可以安全地替换为ArrayList。在用ArrayList替换之前,应仔细检查方法参数,返回值和数据成员,以免您无意中更改同步语义并引入难以发现的错误。