社区
Web 开发
帖子详情
再问Vector和Collection
kevincom
2003-08-21 06:27:33
Vector中removeAll(Collection e)方法要求参数是Collection类型的
怎样将Vector转变为Collection?
...全文
37
4
打赏
收藏
再问Vector和Collection
Vector中removeAll(Collection e)方法要求参数是Collection类型的 怎样将Vector转变为Collection?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
kevincom
2003-08-22
打赏
举报
回复
感激啊!
谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!谢谢!
Wnyu
2003-08-21
打赏
举报
回复
package myprojects.vectorcollection;
import java.util.Vector;
import java.util.Collection;
class VectorCollection {
public VectorCollection() {
}
public void TestVector(){
Vector vc1 = new Vector();
Vector vc2 = new Vector();
vc1.add("Hi,");
vc1.add("kevincom (木瓜) ");
vc1.add("Hello");
vc1.add("World!");
ShowVector(vc1);
vc2.add("Hello");
vc2.add("World!");
System.out.println("--------------");
vc1.removeAll((Collection)vc2);
ShowVector(vc1);
}
public void ShowVector(Vector vc) {
for (int i = 0; i < vc.size(); i++) {
System.out.println(vc.elementAt(i).toString());
}
}
public static void main(String args[]) {
System.out.println("Starting VectorCollection...");
VectorCollection mainFrame = new VectorCollection();
mainFrame.TestVector();
}
}
whyxx
2003-08-21
打赏
举报
回复
直接将vector做为一个collection传进去就行了
shine333
2003-08-21
打赏
举报
回复
不需要啊,VECTOR就是一个COLLECTION的子类的子类的子类,连强制转换都 不需要
电信面试题
3、ArrayList和
Vector
的区别 答: 这两个类都实现了List接口(List接口继承了
Collection
接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引号取出某个元素,,并且其中的数据是允许重复的,这是HashSet之类的集合的最大不同处,HashSet之类的集合不可以按索引号去检索其中的元素,也不允许有重复的元素(本来题目
问
的与hashset没有任何关系,但为了说清楚ArrayList与
Vector
的功能,我们使用对比方式,更有利于说明
问
题)。 接着才说ArrayList与
Vector
的区别,这主要包括两个方面:. (1)同步性:
Vector
是线程安全的,也就是说是它的方法之间是线程同步的,而ArrayList是线程序不安全的,它的方法之间是线程不同步的。如果只有一个线程会访
问
到集合,那最好是使用ArrayList,因为它不考虑线程安全,效率会高些;如果有多个线程会访
问
到集合,那最好是使用
Vector
,因为不需要我们自己再去考虑和编写线程安全的代码。 备注:对于
Vector
&ArrayList、Hashtable&HashMap,要记住线程安全的
问
题,记住
Vector
与Hashtable是旧的,是java一诞生就提供了的,它们是线程安全的,ArrayList与HashMap是java2时才提供的,它们是线程不安全的。所以,我们讲课时先讲老的。(2)数据增长: ArrayList与
Vector
都有一个初始的容量大小,当存储进它们里面的元素的个数超过了容量时,就需要增加ArrayList与
Vector
的存储空间,每次要增加存储空间时,不是只增加一个存储单元,而是增加多个存储单元,每次增加的存储单元的个数在内存空间利用与程序效率之间要取得一定的平衡。
Vector
默认增长为原来两倍,而ArrayList的增长策略在文档中没有明确规定(从源代码看到的是增长为原来的1.5倍)。ArrayList与
Vector
都可以设置初始的空间大小,
Vector
还可以设置增长的空间大小,而ArrayList没有提供设置增长空间的方法。 总结:即
Vector
增长原来的一倍,ArrayList增加原来的0.5倍。
ArrayList 和
Vector
的区别
这两个类都实现了 List 接口(List 接口继承了
Collection
接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引号取出某个元素,并且其中的数据是允许重复的,这是HashSet 之类的集合的最大不同处,HashSet 之类的集合不可以按索引号去检索其中的元素,也不允许有重复的元素(本来题目
问
的与 hashset 没有任何关系,但为了 说清楚 ArrayList 与
Vector
的功能,我们使用对比方式,更有利于...
ArrayList和
Vector
的区别
这两个类都实现了List接口(List接口继承了
Collection
接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引号取出某个元素,,并且其中的数据是允许重复的,这是HashSet之类的集合的最大不同处,HashSet之类的集合不可以按索引号去检索其中的元素,也不允许有重复的元素(本来题目
问
的与hashset没有任何关系,但为了说清楚。同步的,而ArrayList是线程序不安全的,
Vector
是线程安全的,也就是说是。
Vector
和ArrayList异同
这张图里的内容对我们学习Java来说,非常的重要,白色的部分是需要去了解的,黄色部分是我们要去重点了解的,不但要知道怎么去用,至少还需要读一次源码。绿色部分内容已经很少用了,但在面试题中有可能会
问
到,我们来看一个经常出现的面试题:Arraylist与
Vector
的区别是什么?首先我们给出标准答案:1、
Vector
是线程安全的,ArrayList不是线程安全的。2、ArrayList在底层数组不够用...
ArrayList和
Vector
的异同
这两个类都实现了List接口(List接口继承了
Collection
接口),他们都是有序集合,即存储在这两个集合中的元素的位置都是有顺序的,相当于一种动态的数组,我们以后可以按位置索引号取出某个元素,,并且其中的数据是允许重复的,这是HashSet之类的集合的最大不同处,HashSet之类的集合不可以按索引号去检索其中的元素,也不允许有重复的元素(本来题目
问
的与hashset没有任何关系,但为了说
Web 开发
81,091
社区成员
341,719
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章