1

可能重复:
ArrayList 和 Vector 有什么区别?

在我最近的程序中,我经常使用 Vectors。但是,我在某处读到 Vectors 有点旧。这是否意味着它将过时或逐步退出 Java 是值得商榷的。所以建议应该使用 ArrayLists。我注意到 ArrayLists 没有方法 remove(int index, Object object) 而向量有。我问的原因是假设我添加了一个字符串,比如“String 1”。我尝试再次添加相同的字符串。如何删除第一个字符串而不计算它在数组列表中的出现次数。

4

1 回答 1

4

但是,我在某处读到 Vectors有点旧:是的,vector 类被认为是遗留的,并且仍在库中以支持旧应用程序。它被替换为Collections.synchronizedList(list)

我注意到 ArrayLists 没有方法 remove:您可以根据 Index 删除数据。如果你想删除对象使用boolean java.util.ArrayList.remove(Object o):不要忘记覆盖equals和hashcode方法:)

如何删除第一个字符串而不计算它在数组列表中出现的次数:最好的方法是使用 set. 如果线程安全是一个问题,请使用<Object> Set<Object> java.util.Collections.synchronizedSet(Set<Object> s)

希望您的所有问题都得到澄清。问候, 普尼斯

于 2013-02-02T07:55:47.950 回答