• ListIterator特有的方法


    import java.util.ArrayList;
    import java.util.List;
    import java.util.ListIterator;
    
    /*
    迭代
        listIterator() 
        
    
    ListIterator特有的方法:
        
        添加:
            hasPrevious()  判断是否存在上一个元素。
            previous()    当前指针先向上移动一个单位,然后再取出当前指针指向的元素。
            
            next();  先取出当前指针指向的元素,然后指针向下移动一个单位。
            
    ---------------------------    
        
            add(E e)   把当前有元素插入到当前指针指向的位置上。
            set(E e)   替换迭代器最后一次返回的元素。
            
        
    */
    public class Demo3 {
        
        public static void main(String[] args) {
            List list = new ArrayList();
            list.add("狗娃");
            list.add("狗剩");
            list.add("铁蛋");
            list.add("美美");
            
            ListIterator it = list.listIterator(); //返回的是一个List接口中特有的迭代器
            /*System.out.println("有上一个元素吗?"+ it.hasPrevious());
            System.out.println("获取上一个元素:"+it.previous());
            it.next();
            System.out.println("获取上一个元素:"+ it.previous());
            
            
            while(it.hasNext()){
                it.next();
            }
            
            while(it.hasPrevious()){
                System.out.println("元素:"+ it.previous());
            }
            
            
            it.next();
            it.next();
            it.add("张三");
            */
            it.next();
            it.next();
            it.set("张三");
            
            
            System.out.println("集合的元素:"+ list);
            
            
        }
    
    }
    import java.util.ArrayList;
    import java.util.List;
    import java.util.ListIterator;
    
    /*
     
     迭代器在变量元素的时候要注意事项: 在迭代器迭代元素 的过程中,不允许使用集合对象改变集合中的元素 个数,如果需要添加或者删除只能使用迭代器的方法进行操作。
     
     如果使用过了集合对象改变集合中元素个数那么就会出现ConcurrentModificationException异常。    
     
     迭代元素 的过程中: 迭代器创建到使用结束的时间。
     
     */
    
    public class Demo5 {
        
        public static void main(String[] args) {
            List list = new ArrayList();
            list.add("张三");
            list.add("李四");
            list.add("王五");
            
            ListIterator it = list.listIterator();    //获取到迭代器
        /*    while(it.hasNext()){
                System.out.print(it.next()+",");
                //it.add("aa"); // 把元素添加到当前指针指向位置
                list.add("aa");  // add方法是把元素添加到集合的末尾处的。
    //            list.remove("张三");
            }*/
            
            list.add("aa");
            it.next();
            
            
            
            System.out.println("
    集合的元素:"+ list);
        }
    
    }
  • 相关阅读:
    HDU 3336 Count the string (KMP next数组运用——统计前缀出现次数)
    HDU 2594 Simpsons’ Hidden Talents (KMP——前缀后缀最长公共串)
    2015 Multi-University Training Contest 7 1011(DP)
    2015 Multi-University Training Contest 7 1005
    2015 Multi-University Training Contest 7 1007(DP)
    poj 2342 Anniversary party (树形dp)
    POJ 1611 The Suspects (并查集)
    poj 2236 Wireless Network(并查集)
    hdu 3591 The trouble of Xiaoqian(多重背包)
    hdu 2079 选课时间(母函数)
  • 原文地址:https://www.cnblogs.com/xufengyuan/p/6367340.html
Copyright © 2020-2023  润新知