zoukankan      html  css  js  c++  java
  • 类集的输出

    在类集中提供了以下4种常见的输出方式。

    Iterator:迭代输出,是使用最多的输出方式

    ListIterator:是Iterator的子接口,专门用于输出List的内容

    Enumeration:是一个旧的接口,功能与Iterator类似

    foreach:JDK1.5之后提供的新功能,可以输出数组或者集合

    Iterator:迭代输出

    碰到集合输出的操作,就一定使用Iterator接口

    所谓的迭代输出接口就是将元素一个个进行判断,判断其是否有内容,如果有内容则把内容取出。

    <1>实例操作一:输出Collection中的全部内容

    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    import java.util.SortedSet;
    import java.util.TreeSet;
    
    //=================================================
    // File Name       :	Iterator_demo
    //------------------------------------------------------------------------------
    // Author          :	Common
    
    
    
    //主类
    //Function        : 	Iterator_demo;
    public class Iterator_demo {
    
    	public static void main(String[] args) {
    		// TODO 自动生成的方法存根
    		List<String> all = new ArrayList<String>();		//实例化List接口
    		all.add("A");
    		all.add("C");
    		all.add("D");
    		all.add("E");
    		all.add("B");
    		Iterator<String> iter = all.iterator();				//直接实例化Iterator接口
    		while(iter.hasNext()){										//依次判断
    			System.out.println(iter.next()+"、"); 			//输出内容
    		}
    	}
    
    }
    

     <2>实例操作二:使用Iterator删除指定内容

    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    import java.util.SortedSet;
    import java.util.TreeSet;
    
    //=================================================
    // File Name       :	Iterator_demo
    //------------------------------------------------------------------------------
    // Author          :	Common
    
    
    
    //主类
    //Function        : 	Iterator_demo;
    public class Iterator_demo {
    
    	public static void main(String[] args) {
    		// TODO 自动生成的方法存根
    		List<String> all = new ArrayList<String>();		//实例化List接口
    		all.add("A");
    		all.add("C");
    		all.add("D");
    		all.add("E");
    		all.add("B");
    		Iterator<String> iter = all.iterator();				//直接实例化Iterator接口
    		while(iter.hasNext()){										//依次判断
    			String str = iter.next();									//取出内容
    			if("A".equals(str)){
    				iter.remove();
    			}else{
    			System.out.println(str+"、"); 			//输出内容
    			}
    		}
    	}
    
    }
    

    ListIterator:双向迭代输出 

    ListIterator接口的主要功能是由前向后单向输出,而此时如果想实现有后向前或是由前向后的双向输出,则必须使用Iterator接口的子接口——ListIterator。

    <1>进行双向迭代

    <2>增加及代替元素

    import java.util.ArrayList;
    import java.util.Iterator;
    import java.util.List;
    import java.util.ListIterator;
    
    //=================================================
    // File Name       :	ListIterator_demo
    //------------------------------------------------------------------------------
    // Author          :	Common
    
    
    
    //主类
    //Function        : 	ListIterator_demo;
    public class ListIterator_demo {
    
    	public static void main(String[] args) {
    		// TODO 自动生成的方法存根
    		List<String> all = new ArrayList<String>();		//实例化List接口
    		
    		all.add("C");
    		all.add("D");
    		all.add("E");
    		all.add("A");
    		all.add("B");
    		ListIterator<String> iter = all.listIterator();				//实例化ListIterator接口
    		System.out.println("由前向后输出:"); 					//信息输出
    		while(iter.hasNext()){										//依次判断
    			String str = iter.next();									//取出内容
    			System.out.println(str+"、"); 			//输出内容
    			iter.set("LIN-"+str);									//替换元素
    		}
    		
    		System.out.println("由后向前输出:"); 					//信息输出
    		iter.add("TONY"); 														//增加元素
    		while(iter.hasPrevious()){										//依次判断
    			String str = iter.previous();									//取出内容
    			System.out.println(str+"、"); 			//输出内容
    		}
    	}
    
    }
    
  • 相关阅读:
    比较全局变量、全局静态变量、局部变量、局部静态变量的区别
    《Effective C++》——条款20:宁以pass-by-reference-to-const替换pass-by-value
    《Effective C++》——条款17:以独立语句将newed对象置入智能指针
    auto_ptr类
    选择排序
    归并排序
    《Effective C++》——条款08:别让异常逃离析构函数
    使用ResourceBundle读取配置文件
    CSS cursor 属性改变鼠标的样式
    JDBC preparedStatement分页和统计,批处理和事务
  • 原文地址:https://www.cnblogs.com/tonglin0325/p/5285420.html
Copyright © 2011-2022 走看看