Java中List集合的三种遍历方式

背景

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 list = new ArrayList();
      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 (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 list = new ArrayList(); 
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 list = new ArrayList();
        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 iter = list.iterator(); while (iter.hasNext()) {
            News s = (News) iter.next();
            System.out.println(s.getId()+"  "+s.getTitle()+"  "+s.getAuthor());
        }
    }
}

你可能感兴趣的:(Java中List集合的三种遍历方式)