package com.shujia.day13;
import java.util.Enumeration;
import java.util.Iterator;
import java.util.Vector;
/*
Collection:
- List(有序【指的是存储和取出的顺序是一致的】且可以发生重复,且有索引的概念)
- ArrayList: 底层数据结构是数组,查询快,增删慢,线程不安全的,效率高。
- Vector:底层数据结构是数组,查询快,增删慢,线程安全的,效率低
【即便Vector是线程安全的,我们今后也不用,我们会将不安全的ArrayList变成安全的】
- LinkedList:
- Set(元素唯一且无序)
Vector类中的特有功能:
public void addElement(E obj) 从效果上来看和调用add方法一样,都是在集合的末尾处添加元素,将来就使用add来替代它
public E elementAt(int index) 从效果上来看和调用get方法一样,都是根据索引获取元素,将来就使用get来替代它
public Enumeration elements() 获取一个存储所有集合元素的容器,类似于迭代器
//从效果上来看和使用迭代器一样,都是先判断下一个位置是否有元素,然后再获取,将来就使用迭代器来替代它
*/
public class VectorDemo1 {
public static void main(String[] args) {
Vector vector = new Vector();
vector.add("hello");
vector.add("world");
vector.add("java");
vector.add("hadoop");
vector.add("hello");
vector.addElement("flink"); // 从效果上来看和调用add方法一样,都是在集合的末尾处添加元素,将来就使用add来替代它
Iterator iterator = vector.iterator();
while (iterator.hasNext()){
System.out.println(iterator.next());
}
System.out.println("==============================");
//public E elementAt(int index) 根据索引获取元素
System.out.println(vector.elementAt(2)); // 从效果上来看和调用get方法一样,都是根据索引获取元素,将来就使用get来替代它
System.out.println(vector.get(2));
System.out.println("==============================");
//public Enumeration elements() 获取一个存储所有集合元素的容器,类似于迭代器
// 从效果上来看和使用迭代器一样,都是先判断下一个位置是否有元素,然后再获取,将来就使用迭代器来替代它
Enumeration elements = vector.elements();
while (elements.hasMoreElements()){
Object o = elements.nextElement();
System.out.println(o);
}
}
}