java學習之路-----集合------輸出
集合的輸出有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、
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.