黑马程序员技术交流社区

标题: list遍历方法总结 [打印本页]

作者: fmi110    时间: 2015-8-31 10:29
标题: list遍历方法总结
a
  1. /*
  2. *  List集合的遍历方法
  3. * */
  4. package list_demo;

  5. import java.util.ArrayList;
  6. import java.util.Iterator;
  7. import java.util.List;
  8. import java.util.ListIterator;

  9. public class ListDemo3 {
  10.         public static void main(String[] args) {
  11.                
  12.                 //创建集合,添加元素
  13.                 List<Student> list = new ArrayList<Student>();
  14.                 list.add(new Student("Lili",18));
  15.                 list.add(new Student("Lucy",18));
  16.                 list.add(2,new Student("Hanmm",19));
  17.                 list.add(0,new Student("Lilei", 16));
  18.                
  19.                 System.out.println(list);
  20.                
  21.                 //遍历1:集合迭代器
  22. //                Iterator<Student> it = list.iterator();
  23.                 System.out.println("Iterator遍历");
  24.                 for(Iterator<Student> it = list.iterator();it.hasNext();){
  25.                         Student s = it.next();
  26.                         System.out.println(s.getName()+"\t...\t"+s.getAge());
  27.                 }
  28.                
  29.                 //遍历2:get方法遍历
  30.                 System.out.println("get方法遍历");
  31.                 for(int i = 0;i<list.size();i++){
  32.                         Student s1 = list.get(i);
  33.                         System.out.println(s1.getName()+"\t...\t"+s1.getAge());
  34.                 }
  35.                
  36.                 //遍历3:ListIterator遍历
  37.                 System.out.println("listIterator遍历");
  38.                 ListIterator<Student> lit = list.listIterator();
  39.                 for(; lit.hasNext();){
  40. //                        System.out.println(lit.next());
  41.                         Student s = lit.next();
  42.                         System.out.println(s.getName()+"\t...\t"+s.getAge());
  43.                 }
  44.                 //逆向遍历
  45.                 System.out.println("list特有的逆向遍历 ");
  46.                 for(;lit.hasPrevious();){
  47.                         System.out.println("previous index:"+lit.previousIndex());//输出前一元素的索引值
  48.                         Student s = lit.previous();
  49.                         System.out.println(s.getName()+"\t...\t"+s.getAge());
  50.                 }
  51.         }
  52. }
复制代码



作者: fmi110    时间: 2015-8-31 10:30
输出
[Student [name=Lilei, age=16], Student [name=Lili, age=18], Student [name=Lucy, age=18], Student [name=Hanmm, age=19]]
Iterator遍历
Lilei        ...        16
Lili        ...        18
Lucy        ...        18
Hanmm        ...        19
get方法遍历
Lilei        ...        16
Lili        ...        18
Lucy        ...        18
Hanmm        ...        19
listIterator遍历
Lilei        ...        16
Lili        ...        18
Lucy        ...        18
Hanmm        ...        19
list特有的逆向遍历
previous index:3
Hanmm        ...        19
previous index:2
Lucy        ...        18
previous index:1
Lili        ...        18
previous index:0
Lilei        ...        16

作者: 洛克萨斯    时间: 2015-9-1 00:29
逆向遍历 这个没讲 不知道
作者: marcojam    时间: 2015-9-1 00:30
洛克萨斯 发表于 2015-9-1 00:29
逆向遍历 这个没讲 不知道

毕老师讲的
作者: 13009862300    时间: 2015-9-1 01:18
噢噢噢噢噢噢噢噢哦哦  
作者: cc3441251    时间: 2015-9-1 08:06
谢谢楼主分享
作者: 289308575    时间: 2015-9-1 09:22
我来看看
作者: a1ccwt    时间: 2015-9-1 09:39
写的很不错
作者: 胡述灵    时间: 2015-9-1 09:54
32个赞!!
作者: asinzuo    时间: 2015-9-1 10:01
真的很不错,,,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2