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

java中集合输出的四种方式

2016-08-12 17:11 1056 查看
一、Literator:迭代器

public boolean hasNext();

public E next() ;

Iterator本身是一个接口,要想取得实例化只能依靠Collection接口中的一个操作方法:

public Iterator<E> iterator();


示例代码:

public class MyLiterator {

public static void main(String[] args) {
Set<String> s = new HashSet<String>();
s.add("1");
s.add("2");
s.add("3");
Iterator<String> iter = s.iterator();
while(iter.hasNext()) {
System.out.println(iter.next());
}

}
}


总结:只要是集合的输出,直接使用Iterator

二、双向迭代:ListLterator

右前向后或者由后向前输出,只能够为List子接口输出接口

public boolean hasPrevious();
public E previous();


注:双向输出,必须是有从前到后的输出,才有从后到前的输出

示例代码:

public static void main(String[] args) {
List<String> s = new ArrayList<String>();
s.add("A");
s.add("B");
s.add("C");
ListIterator<String> iter = s.listIterator();
//由前向后输出
while(iter.hasNext()) {
System.out.print(iter.next()+"、");
}
//由后向前输出:
while(iter.hasPrevious()) {
System.out.print(iter.previous()+"、");
}

}
}


三、foreach输出

示例代码:

public class MyLiterator {

public static void main(String[] args) {
List<String> s = new ArrayList<String>();
s.add("A");
s.add("B");
s.add("C");
for(String str:s) {
System.out.println(str);
}

}
}


四、Enumeration输出

定义:

public interface Enumeration<E>


方法:

public boolean hasMoreElements();//判断是否有下一个元素,等同于hasNext()
public E nextElement();//取出当前元素,等同于next()


取得Enumeration接口的实例化对象只能依靠Vector子类,在Vector子类中方法:

public Enumeration<E> elements();


示例代码

public class MyLiterator {

public static void main(String[] args) {
//此时不能使用List<String> s = new Vector<String>();
//因为elements()方法是Vector子类中特有的方法
Vector<String> s = new Vector<String>();
s.add("A");
s.add("B");
s.add("C");
Enumeration<String> enu = s.elements();
while(enu.hasMoreElements()) {
System.out.println(enu.nextElement());
}

}
}


——————————————————————–总结:

集合虽然有四种形式,但是以Iterator与Enumeration输出为主,特别是Iterator
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java