Java Vector size() 方法
Vector
类的 size()
方法用于获取当前 Vector
中包含的元素数量。这是一个非常基础但重要的方法,在集合操作中经常使用。
语法说明
public int size()
方法特点
- 返回类型:
int
- 返回值:当前
Vector
中的元素数量 - 时间复杂度:O(1)(常数时间)
使用示例
基本用法
实例
import java.util.Vector;
public class VectorSizeExample {
public static void main(String[] args) {
// 创建一个 Vector
Vector<String> fruits = new Vector<>();
// 添加元素
fruits.add("Apple");
fruits.add("Banana");
fruits.add("Orange");
// 使用 size() 方法获取元素数量
int size = fruits.size();
System.out.println("Vector 中的元素数量: " + size);
}
}
public class VectorSizeExample {
public static void main(String[] args) {
// 创建一个 Vector
Vector<String> fruits = new Vector<>();
// 添加元素
fruits.add("Apple");
fruits.add("Banana");
fruits.add("Orange");
// 使用 size() 方法获取元素数量
int size = fruits.size();
System.out.println("Vector 中的元素数量: " + size);
}
}
输出:
Vector 中的元素数量: 3
与容量(capacity)的区别
初学者经常混淆 size()
和 capacity()
方法:
实例
Vector<Integer> numbers = new Vector<>(10); // 初始容量为10
numbers.add(1);
numbers.add(2);
System.out.println("Size: " + numbers.size()); // 输出: 2
System.out.println("Capacity: " + numbers.capacity()); // 输出: 10
numbers.add(1);
numbers.add(2);
System.out.println("Size: " + numbers.size()); // 输出: 2
System.out.println("Capacity: " + numbers.capacity()); // 输出: 10
size()
:当前存储的元素数量capacity()
:Vector 当前可以存储的最大元素数量(无需扩容)
常见应用场景
1. 遍历 Vector
实例
for (int i = 0; i < vector.size(); i++) {
System.out.println(vector.get(i));
}
System.out.println(vector.get(i));
}
2. 检查 Vector 是否为空
虽然可以使用 isEmpty()
方法,但也可以这样:
实例
if (vector.size() == 0) {
System.out.println("Vector 是空的");
}
System.out.println("Vector 是空的");
}
3. 控制循环次数
实例
while (vector.size() < 10) {
vector.add("Item " + (vector.size() + 1));
}
vector.add("Item " + (vector.size() + 1));
}
注意事项
线程安全:虽然
Vector
是线程安全的,但size()
方法返回的值在多线程环境下可能会立即失效(如果其他线程正在修改Vector
)。性能考虑:对于需要频繁插入和删除操作的场景,
ArrayList
通常比Vector
性能更好,因为Vector
的同步操作会带来额外开销。替代方案:在 Java 5 及以后版本,可以考虑使用
Collections.synchronizedList()
包装ArrayList
来获得线程安全的列表:
List<String> syncList = Collections.synchronizedList(new ArrayList<String>());
总结
Vector
的 size()
方法是一个简单但非常重要的方法,它可以帮助我们:
- 了解集合当前包含多少元素
- 控制循环和迭代
- 检查集合状态
虽然 Vector
在现代 Java 开发中使用频率有所下降(被 ArrayList
取代),但在需要线程安全集合的场景中,它仍然是一个可靠的选择。理解 size()
方法对于掌握 Java 集合框架的基础操作至关重要。
点我分享笔记