Collection集合遍历方式

  • 迭代器遍历 
 public static void main(String args[]) {
       
        Collection<String> c = new ArrayList<>();
        c.add("lkh");
        c.add("lkh1");
        c.add("lkh2");
        c.add("lkh3");
        System.out.println(c);


        //使用迭代器遍历集合
        //1.从集合对象中获取迭代器对象
        Iterator<String> it = c.iterator();
//        System.out.println(it.next());
//        System.out.println(it.next());
//        System.out.println(it.next());
//        System.out.println(it.next());
//        System.out.println(it.next());出现异常

        //2.使用循环结合迭代器遍历集合
        while (it.hasNext()) {
            String ele = it.next();
            System.out.println(ele);
        }

    }
  • 增强for循环遍历 
  //增强for循环遍历集合或数组
        for(String ele : c){
            System.out.println(ele);
        }

        String array[] = {"123","456","789"};
        for (String s : array) {
            System.out.println(s);
        }
  • lambda表达式遍历
       //结合lambda表达式遍历集合
//      c.forEach(new Consumer<String>() {
//          @Override
//          public void accept(String string) {
//              System.out.println(s);
//          }
//      });
//
//      c.forEach(String s) -> {
//              System.out.println(s);
//      });
//
//      c.forEach(s   -> {
//              System.out.println(s);
//      });
//
//      c.forEach(s   -> System.out.println(s) );

      c.forEach(System.out::println );
  • 案例:将电影信息存储到集合,并打印出来
public static void main(String args[]) {

        Collection<Movie> movies = new ArrayList<>();
        movies.add(new Movie("熊出没",9.9,"光头强"));
        movies.add(new Movie("海贼王",9.8,"路飞"));
        movies.add(new Movie("青青草原",8.9,"喜洋洋"));
        //这里输出是地址,集合存储的是元素的地址信息
        System.out.println(movies);


        for (Movie movie : movies) {
            System.out.println(movie.getName());
            System.out.println(movie.getScore());
            System.out.println(movie.getActor());
            System.out.println("================");
        }


    }
}

class Movie{
    private String name;
    private double score;
    private String actor;


    public Movie() {
    }

    public Movie(String name, double score, String actor) {
        this.name = name;
        this.score = score;
        this.actor = actor;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public double getScore() {
        return score;
    }

    public void setScore(double score) {
        this.score = score;
    }

    public String getActor() {
        return actor;
    }

    public void setActor(String actor) {
        this.actor = actor;
    }
}

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值