Map集合:链接: Map集合的五种遍历方式及Treemap方法
Set集合:链接: Java中遍历Set集合的三种方法
TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法
LIst集合:链接: Java中List集合的三种遍历方式(全网最详)
集合区别:链接: java中list,set,map集合的区别,及面试要点
List集合在Java日常开发中是必不可少的,要懂得运用各种各样的方法可以大大提高我们开发的效率,当然是要在对应的需求上使用合适的方法才会事半功倍。
List集合:
List exampleList = new ArrayList<>();
实体类(Example):
package ListExample;
import java.io.Serializable;
/**
* Created by Max on 2017-06-18.
*/
public class Example implements Serializable{
private String id;
private String name;
private String pass;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPass() {
return pass;
}
public void setPass(String pass) {
this.pass = pass;
}
}
第一种、最基础的遍历方式: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());
}
}
}
上面三种遍历方式差别不是特别大,在没有特定的要求时,均可以使用。不过根据不同的特殊情况,要合理选择方式,来提高开发的效率。