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

原创 2013年12月03日 15:18:40
集合的输出有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();//删除
}


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

}
结果:
like、hello、hello world、

2.删除特定的元素

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

}
结果:
hello、hello world、

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

}
结果:
like、hello、hello world、
hello world、hello、like、

补充:如果想要由后向前输出,就必须要有由前向后输出

4.增加及替换元素

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

}
结果:
like、hello、hello world、
aaaaaaa、hello worldlike_、hellolike_、likelike_、
5.java 1.5 的新特性   foreach

public class ForeachDemo {
     public static void main(String[] args) {
          List<String> list = new ArrayList<String>();

          list.add( "like");

          list.add( "hello");

          list.add( "hello world");

           for (String list1 : list) {
              System. out.print(list1+"、" );
          }
     }

}

结果:
like、hello、hello world、

6.废弃的接口  Enumeration 

它的作用基本上和 Iterator 相同

public class EnumerationDemo {
     public static void main(String[] args) {
          Vector<String> list = new Vector<String>();

          list.add( "like");

          list.add( "hello");

          list.add( "hello world");

          Enumeration<String> e =list.elements();
          
           while(e.hasMoreElements()){
              System. out.print(e.nextElement()+"、" );
          }
     }

}

结果:
like、hello、hello world、




版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

java学习之路的自我回顾5(集合)

java的集合类集合类大致可分为:Set,Liet,Map,Queue 1.Set 代表无序,不可重复的集合 2.List 代表有序,可重复的集合 3.Map 代表具有映射关系的集合 4.Qu...

java学习之路---集合(类集)---List

集合----list-----大家一起学习。。。。

java学习之路——小例子(实现输入年份,输出该年份的具体天数信息)

实现输入年份,输出该年份的具体天数信息。练手的代码:  package com.lcq.ThreadTest; import java.util.Scanner; public class...

Java学习之路

  • 2015年04月21日 13:59
  • 42KB
  • 下载

java学习之路 之 Java集合练习题

import java.util.Iterator; import java.util.LinkedList; import java.util.List; import java.util.Arra...

java学习之路

  • 2013年08月02日 19:24
  • 315KB
  • 下载

JAVA学习之路

  • 2015年06月04日 22:33
  • 250KB
  • 下载

java多线程之路之线程安全的集合—Core Java学习

qqq
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java学习之路-----集合------输出
举报原因:
原因补充:

(最多只允许输入30个字)