美文网首页
java中的ArrayList

java中的ArrayList

作者: 小漫画ing | 来源:发表于2019-04-02 14:43 被阅读0次

    List的子类ArrayList特点:

    package cn.manman.com;
    
    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.ListIterator;
    
    /*
     * List的子类特点:
     *      ArrayList:
     *          底层数据结构是数组,查询快,增删慢;
     *          线程不安全,效率高;
     *      Vector:
     *          底层数据结构是数组,查询快,增删慢;
     *          线程安全,效率di;
     *      LinkKedList:
     *          底层数据结构是链表,查询慢,增删快;
     *          线程不安全,效率高;
     * 案例:
     *      使用List的任何子类存储字符串或者自定义的对象并遍历;
     * ArrayList的使用
     *      存储字符串并遍历
     */
    public class ArrayListDemo {
        public static void main(String[] args) {
            //创建集合对象
            ArrayList arrayList=new ArrayList();
            
            //创建元素对象,并添加对象
            arrayList.add("hello");
            arrayList.add("world");
            arrayList.add("java");
            
            //遍历
            //方法一
            Iterator it=arrayList.iterator();
            while (it.hasNext()) {
                String s = (String) it.next();
                System.out.println(s);
                
            }
            System.out.println("--------");
            
            //遍历方法二,专门针对List的遍历
            ListIterator it1=arrayList.listIterator();
            while (it1.hasNext()) {
                String s1 = (String) it1.next();
                System.out.println(s1);
            }
            System.out.println("-------");
            
            //方法三,用for循环遍历
            for (int i = 0; i < arrayList.size(); i++) {
                String s2=(String) arrayList.get(i);
                System.out.println(s2);
            }
        }
    }
    
    

    List的子类Vector的特点:

    • 添加功能:public void addElement(Object obj)
    //创建集合对象
            Vector vector=new Vector();
            
            //添加功能
            vector.addElement("hello");
            vector.addElement("world");
            vector.addElement("java");
    
    • 获取功能:
      public Object elementAt(int index)
    
            //方法一,遍历
            for (int i = 0; i < vector.size(); i++) {
                String s1=(String) vector.elementAt(i);
                System.out.println(s1);
            }
    

    public Enumeration elements()

    //方法二,遍历。
            Enumeration enumeration =vector.elements();
            while (enumeration.hasMoreElements()) {
                String s2 = (String) enumeration.nextElement();
                System.out.println(s2);
                
            }
    

    List子类的LinkedList的特有功能:

    • 添加功能
      public void addFirst(Object c)
    //添加元素,从前面开始添加
            linkedList.addFirst("hello");
            linkedList.addFirst("world");
            linkedList.addFirst("java");
    

    public void addLast(Object c)

    //添加元素,从后面开始添加
            linkedList.addLast("android");
            linkedList.addLast("web");
            linkedList.addLast("jsp");
    
    • 获取功能
      public Object getFirst()
    System.out.println("从前面获取:"+linkedList.getFirst());
    

    public Object getLast()

    System.out.println("从后面获取:"+linkedList.getLast());
    
    • 删除功能
      public Object removeFirst()
    System.out.println("removeFirst:"+linkedList.removeFirst());
    

    public Object removeLast()

    System.out.println("removeLast:"+linkedList.removeLast());
    

    练习:

    • 去除集合中字符串的重复值
    package cn.manman.com;
    
    import java.util.ArrayList;
    import java.util.Iterator;
    
    /*
     * ArrayList去除集合中字符串的重复值
     * 分析:
     * A:创建集合对象
     * B:添加多个字符串元素(包含相同的)
     * C:创建新集合
     * D:遍历旧集合,获取得到每一个元素
     * E:拿这个元素到新的集合里面取找,有,不添加,没有,添加到新集合
     */
    public class 练习1 {
        public static void main(String[] args) {
            //创建集合对象
            ArrayList arrayList=new ArrayList();
            
            //添加多个元素
            arrayList.add("hello");
            arrayList.add("world");
            arrayList.add("java");
            arrayList.add("hello");
            arrayList.add("android");
            arrayList.add("world");
            
            //创建新的集合
            ArrayList arrayList2=new ArrayList();
            
            //遍历旧的集合,获取得到每一个元素
            Iterator iterator=arrayList.iterator();
            while (iterator.hasNext()) {
                String string = (String) iterator.next();
                
                //用从旧集合中遍历出来的元素到新的集合里面取匹配
                if (!arrayList2.contains(string)) {
                    arrayList2.add(string);
                }
                
            }
            //遍历新的集合
            for (int i = 0; i < arrayList2.size(); i++) {
                String string = (String) arrayList2.get(i);
                System.out.println(string);
            }
        }
    }
    
    

    相关文章

      网友评论

          本文标题:java中的ArrayList

          本文链接:https://www.haomeiwen.com/subject/rievbqtx.html