首页 > 代码库 > ArrayList、Vector

ArrayList、Vector

Vector特有功能:

import java.util.Enumeration;
import java.util.Vector;

/*    Vector特有功能
        添加功能:void addElement(E obj) 将指定的组件添加到此向量的末尾,将其大小增加 1。                ----add();
        获取功能:E elementAt(int index) 返回指定索引处的组件。                                      ----get();
                 Enumeration<E> elements() 返回此向量的组件的枚举。                                 ----Iterator();
                 boolean hasMoreElements() 测试此枚举是否包含更多的元素。                            ----hasNext();
                 E nextElement()  如果此枚举对象至少还有一个可提供的元素,则返回此枚举的下一个元素。  ----next();
                  */

public class VectorDemo {

    public static void main(String[] args) {
        Vector<String> v = new Vector<>();
        v.addElement("hello");
        v.addElement("java");
        v.addElement("world");
        for(int i = 0; i < v.size(); i++){
            String s = (String)v.elementAt(i);
            System.out.println("使用elementAt()返回指定位置的元素 " + s);
        }
        
        System.out.println("------------------------");
        
        Enumeration en = v.elements();
        while(en.hasMoreElements()){
            String s = (String)en.nextElement();
            System.out.println("使用特有迭代功能 " + s);
        }

    }

}

 LinkedList类概述
    底层数据结构是链表,查询慢,增删快
    线程不安全,效率高

import java.util.LinkedList;
/*    
 *     LiknedList类特有功能
    void addFirst(E e) 将指定元素插入此列表的开头 
    void addLast(E e) 将指定元素添加到此列表的结尾 
    E getFirst() 返回此列表的第一个元素。 
    E getLast() 返回此列表的最后一个元素。 
    E removeFirst() 移除并返回此列表的第一个元素。 
    boolean removeFirstOccurrence(Object o) 从此列表中移除第一次出现的指定元素(从头部到尾部遍历列表时)。 
     E removeLast() 移除并返回此列表的最后一个元素。 
     boolean removeLastOccurrence(Object o) 从此列表中移除最后一次出现的指定元素(从头部到尾部遍历列表时)。 
*/
public class LinkedListDemo {

    public static void main(String[] args) {
        LinkedList<String> ll = new LinkedList<>();
        
        ll.add("hello");
        ll.add("world");
        ll.add("java");
        
        ll.addFirst("添加到列表的开头");
        
        ll.addLast("添加到列表的最后一位");
        
        System.out.println("获取列表的第一个元素 " + ll.getFirst());
        
        System.out.println("获取列表的最后一个元素 " + ll.getLast());
        
        System.out.println("移除并返回列表的第一个元素 "+ ll.removeFirst());
        
        System.out.println("移除并返回列表的最后一个元素 "+ ll.removeLast());
        
        System.out.println("LinkedList的元素 " + ll);
    }

}

去除重复元素:

import java.util.ArrayList;
import java.util.Collection;

public class rrayListDemo {

    public static void main(String[] args) {
        ArrayList<String> c = new ArrayList<>();
        c.add("zed1");
        c.add("zed1");
        c.add("zed2");
        c.add("zed3");
        c.add("zed4");
        c.add("zed5");
        c.add("zed5");
        
        System.out.println(c);
        
        
        //通过新建一个集合去除List集合中的重复元素
        Collection<String> c2 = new ArrayList<>();
        for(int i = 0; i < c.size();i++){
            String s = (String) c.get(i);
            if(!c2.contains(s)){
                c2.add(s);
            }
        }
        System.out.println("第一种方法去重复,c2的元素为: " + c2);
        
        //方法二:在同一个集合中操作
        for(int i = 0; i < c.size(); i++){
            for(int j = i + 1;j < c.size();j++){
                if(c.get(i).equals(c.get(j))){
                    c.remove(c.get(j));
                }
            }
        }
        System.out.println("第二种方法,c的元素为:" + c);
    }

}

 

ArrayList、Vector