您的位置:首页 > 编程语言 > Java开发

java学习之路-----集合------输出

2013-12-03 15:18 513 查看
集合的输出有4种
                    1.Iterator 迭代器,使用最多的输出方法
                    2.ListIterator  用来输出list集合的迭代器
                    3.Enumeration 是一个旧的接口,和迭代器的功能差不多
                    4.foreach : jdk 1.5 以后增加的新功能
                    

1.迭代输出   Iterator

          集合的输出有一个思想:”就是只要集合要输出,最好就用迭代“,因为这是最标准的做法

     迭代输出的原理
                    



来看下源码:

      public interface Iterator <E>
{

   

    boolean hasNext();//判断

    E next();//取走

   

    void remove();//删除

}

例子:

[align=left]public class IteratorTest {[/align]
     public static void main(String[]
args) {
[align=left]          List<String> list= new ArrayList<String>();[/align]
[align=left]          [/align]
[align=left]          list.add( "like");[/align]
[align=left]          [/align]
[align=left]          list.add( "hello");[/align]
[align=left]          [/align]
[align=left]          list.add( "hello world");[/align]
[align=left]          [/align]
[align=left]          Iterator<String> iterator=list.iterator();[/align]
[align=left]          [/align]
[align=left]           while(iterator.hasNext()){[/align]
[align=left]              System. out.print(iterator.next()+"、" );[/align]
[align=left]          }[/align]
[align=left]     }[/align]
[align=left]
[/align]
[align=left]}[/align]
[align=left]结果:[/align]

[align=left]like、hello、hello world、[/align]
[align=left]
[/align]
[align=left]2.删除特定的元素[/align]
[align=left]
[/align]

[align=left]public class IteratorTest1 {[/align]
     public static void main(String[]
args) {
[align=left]List<String> list=new ArrayList<String>();[/align]
[align=left]          [/align]
[align=left]          list.add( "like");[/align]
[align=left]          [/align]
[align=left]          list.add( "hello");[/align]
[align=left]          [/align]
[align=left]          list.add( "hello world");[/align]
[align=left]          [/align]
[align=left]          [/align]
[align=left]          Iterator<String> iterator=list.iterator();[/align]
[align=left]          [/align]
[align=left]           while(iterator.hasNext()){[/align]
[align=left]              String str=iterator.next();[/align]
[align=left]               if("like" .equals(str)){[/align]
[align=left]                   iterator.remove();[/align]
[align=left]              } else{[/align]
[align=left]                   System. out.print(str+"、" );[/align]
[align=left]              }[/align]
[align=left]          }[/align]
[align=left]     }[/align]
[align=left]
[/align]
[align=left]}[/align]
[align=left]结果:[/align]

[align=left]hello、hello world、[/align]
[align=left]
[/align]
[align=left]3.listIterator 的双向输出[/align]

public class ListIteratorTest
{
     public static void main(String[]
args) {
[align=left]List<String> list=new ArrayList<String>();[/align]
[align=left]          [/align]
[align=left]          list.add( "like");[/align]
[align=left]          [/align]
[align=left]          list.add( "hello");[/align]
[align=left]          [/align]
[align=left]          list.add( "hello world");[/align]
[align=left]          [/align]
[align=left]          ListIterator<String> iterator=list.listIterator();[/align]
[align=left]          [/align]
[align=left]           while(iterator.hasNext()){//由前向后输出[/align]
[align=left]              System. out.print(iterator.next()+"、" );[/align]
[align=left]          }[/align]
[align=left]          [/align]
[align=left]          System. out.println("" );[/align]
[align=left]          [/align]
[align=left]           while(iterator.hasPrevious()){//由后向前输出[/align]
[align=left]              String str=iterator.previous();[/align]
[align=left]              System. out.print(str+"、" );[/align]
[align=left]          }[/align]
[align=left]          [/align]
[align=left]     }[/align]
[align=left]
[/align]
[align=left]}[/align]
[align=left]结果:[/align]

[align=left]like、hello、hello world、[/align]
[align=left]hello world、hello、like、[/align]
[align=left]
[/align]
[align=left]补充:如果想要由后向前输出,就必须要有由前向后输出[/align]
[align=left]
[/align]
[align=left]4.增加及替换元素[/align]
[align=left]
[/align]

public class ListIteratorDemo
{
     public static void main(String[]
args) {
[align=left]List<String> list=new ArrayList<String>();[/align]
[align=left]          [/align]
[align=left]          list.add( "like");[/align]
[align=left]          [/align]
[align=left]          list.add( "hello");[/align]
[align=left]          [/align]
[align=left]          list.add( "hello world");[/align]
[align=left]          [/align]
[align=left]          ListIterator<String> iterator=list.listIterator();[/align]
[align=left]          [/align]
[align=left]          [/align]
[align=left]           while(iterator.hasNext()){[/align]
[align=left]              String  str=iterator.next();[/align]
[align=left]              System. out.print(str+"、" );[/align]
[align=left]              iterator.set(str+ "like_");[/align]
[align=left]              [/align]
[align=left]          }[/align]
[align=left]          System. out.println();[/align]
[align=left]          iterator.add( "aaaaaaa");[/align]
[align=left]           while(iterator.hasPrevious()){[/align]
[align=left]              String str=iterator.previous();[/align]
[align=left]              System. out.print(str+"、" );[/align]
[align=left]          }[/align]
[align=left]          [/align]
[align=left]     [/align]
[align=left]     }[/align]
[align=left]
[/align]
[align=left]}[/align]
[align=left]结果:[/align]

[align=left]like、hello、hello world、[/align]
[align=left]aaaaaaa、hello worldlike_、hellolike_、likelike_、[/align]
[align=left]5.java 1.5 的新特性   foreach[/align]
[align=left]
[/align]

[align=left]public class ForeachDemo {[/align]
     public static void main(String[]
args) {
[align=left]          List<String> list = new ArrayList<String>();[/align]
[align=left]
[/align]
[align=left]          list.add( "like");[/align]
[align=left]
[/align]
[align=left]          list.add( "hello");[/align]
[align=left]
[/align]
[align=left]          list.add( "hello world");[/align]
[align=left]
[/align]
           for (String
list1 : list) {
[align=left]              System. out.print(list1+"、" );[/align]
[align=left]          }[/align]
[align=left]     }[/align]
[align=left]
[/align]
[align=left]}[/align]
[align=left]
[/align]
[align=left]结果:[/align]

[align=left]like、hello、hello world、[/align]
[align=left]
[/align]
[align=left]6.废弃的接口  Enumeration [/align]
[align=left]
[/align]
[align=left]它的作用基本上和 Iterator 相同[/align]
[align=left]
[/align]

[align=left]public class EnumerationDemo {[/align]
     public static void main(String[]
args) {
[align=left]          Vector<String> list = new Vector<String>();[/align]
[align=left]
[/align]
[align=left]          list.add( "like");[/align]
[align=left]
[/align]
[align=left]          list.add( "hello");[/align]
[align=left]
[/align]
[align=left]          list.add( "hello world");[/align]
[align=left]
[/align]
[align=left]          Enumeration<String> e =list.elements();[/align]
[align=left]          [/align]
[align=left]           while(e.hasMoreElements()){[/align]
[align=left]              System. out.print(e.nextElement()+"、" );[/align]
[align=left]          }[/align]
[align=left]     }[/align]
[align=left]
[/align]
[align=left]}[/align]
[align=left]
[/align]
[align=left]结果:[/align]

[align=left]like、hello、hello world、[/align]
[align=left]
[/align]
[align=left]
[/align]

[align=left]
[/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: