网站首页 > 基础教程 正文
java.util.Vector与Java开发工具包(JDK)的第一个版本一起提供。 java.util.ArrayList在Java版本1.2中引入,是Java集合框架的一部分。根据Java API,在Java 2平台v1.2中,vector已进行了改进以实现List,vector也成为java collection框架的一部分。
Vector的所有方法都是同步的。但是,ArrayList的方法不同步。 Java collection框架的所有新实现均未同步。
Vector和ArrayList都在内部使用Array作为数据结构。它们是可动态调整大小的。区别在于内部调整大小的方式。默认情况下,Vector的大小增加时,Vector会将数组的大小加倍。但是,当ArrayList的大小增加时,其大小将增加一半。 因此,根据Java API,唯一的主要区别是,Vector的方法是同步的,而ArrayList的方法是不同步的。
Vector还是ArrayList?在Java中使用哪个更好?
通常,执行“同步”方法会比不同步方法产生更高的性能。记住差异,使用Vector会比ArrayList产生性能下降。但是,当确实需要线程安全操作时,需要使用Vector。
Java中是否有Vector的替代版本?
可以使用java collection utility 工具类同步ArrayList,然后可以使用ArrayList本身来代替Vector。当不需要同步操作并且您仍在寻找更好的性能时,可以使用“ Array”代替ArrayList。但是开发过程很繁琐,因为它不提供用户友好的方法。使用Vector或ArrayList时,请始终将其初始化为Java程序所需的最大容量。由于增加大小是较昂贵的操作。
猜你喜欢
- 2024-12-06 4.Python趣味数学笔记:向量运算
- 2024-12-06 高中数学——平面向量
- 2024-12-06 高中数学:向量垂直、共线在解析几何中的应用
- 2024-12-06 复数在高中数学中的应用
- 2024-12-06 不一样的余弦定理
- 2024-12-06 9.理解点和向量的基本操作
- 2024-12-06 深入理解:推荐系统中的召回与排序(一)
- 2024-12-06 空间向量的基本概念、空间向量的数乘运算(小知识点)
- 2024-12-06 高等数学之向量代数与空间解析几何知识点与题型总结
- 2024-12-06 C++ vector 简介
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)