背景
List集合在Java日常开发中是必不可少的,从网络上收集了三种List集合的遍历方式。
创建一个实体类,以供List使用
public class News
{
private int id;
private String title;
private String author;
public News(int id, String title, String author) {
super();
this.id = id;
this.title = title;
this.author = author;
}
public int getId() { return id;}
public void setId(int id) { this.id = id;}
public String getTitle() { return title;}
public void setTitle(String title) { this.title = title;}
public String getAuthor() { return author;}
public void setAuthor(String author) { this.author = author;}
}
遍历
第一种,for循环,指定下标长度,使用List集合的size()方法,进行for循环遍历
import java.util.ArrayList;
public class Demo01 {
public static void main(String[] args) {
ArrayList<News> list = new ArrayList<News>();
list.add(new News(1,"list1","a"));
list.add(new News(2,"list2","b"));
list.add(new News(3,"list3","c"));
list.add(new News(4,"list4","d"));</pre>
for (int i = 0; i < list.size(); i++) {
News s = (News)list.get(i);
System.out.println(s.getId()+" "+s.getTitle()+" "+s.getAuthor());
}
}
}
第二种,使用foreach遍历List,但不能对某一个元素进行操作(这种方法在遍历数组和Map集合的时候同样适用)
import java.util.ArrayList;
public class Demo02 {
public static void main(String[] args) {
ArrayList<News> list = new ArrayList<News>(); </pre>
list.add(new News(1,"list1","a"));
list.add(new News(2,"list2","b"));
list.add(new News(3,"list3","c"));
list.add(new News(4,"list4","d"));
for (News s : list) {
System.out.println(s.getId()+" "+s.getTitle()+" "+s.getAuthor());
}
}
}
第三种,使用迭代器Iterator遍历,直接根据List集合的自动遍历
import java.util.ArrayList;
public class Demo03 {
public static void main(String[] args) {
ArrayList<News> list = new ArrayList<News>();
list.add(new News(1,"list1","a"));
list.add(new News(2,"list2","b"));
list.add(new News(3,"list3","c"));
list.add(new News(4,"list4","d"));
Iterator<News> iter = list.iterator(); while (iter.hasNext()) {
News s = (News) iter.next();
System.out.println(s.getId()+" "+s.getTitle()+" "+s.getAuthor());
}
}
}