zoukankan      html  css  js  c++  java
  • Java连载84-Collection的常用方法、迭代器

    一、Collections的常用方法介绍

    1.承接上次连载,先介绍几个简单的常用方法

    package com.bjpowernode.java_learning;
    
    import java.util.*;
    
    public class D84_1_CommonMethodOfCollection {
    
      public static void main(String[] args) {
    
        //1.创建集合
    
        Collection c = new ArrayList();//多态
    
       
    
        //2.添加元素
    
        c.add(1);//JDK5.0之后自动装箱
    
        c.add(new Integer(100));
    
       
    
        Object o = new Object();
    
        c.add(o);//Collection集合只能单个存储元素,并且只能存储引用类型
    
       
    
        Customer84 cus = new Customer84("xiaoming",47);
    
        c.add(cus);
    
       
    
        //3.获取元素的个数
    
        System.out.println(c.size());
    
        System.out.println("======================");
    
       
    
        //4.将集合转换为Object类型的数组
    
        Object[] objs = c.toArray();
    
        for(int i =0;i<objs.length;i++) {//数组中length是属性,列表中是方法
    
          System.out.println(objs[i]);
    
        }
    
       
    
        //5.清空
    
        c.clear();   
    
        System.out.println("======================");
    
        System.out.println(c.size());
    
       
    
       
    
      }
    
    }
    
    class Customer84{
    
      String name ;
    
      int age ;
    
      Customer84(String name,int age){
    
        this.name = name;
    
        this.age = age;
    
      }
    
      public String toString() {
    
        return "Customer[name="+name+",age="+age+"]";
    
      }
    
    }

    二、迭代器

    1.Iterator iterator();获取集合所依赖的迭代器对象,通过迭代器中的方法完成集合中的迭代(遍历)

    2.注意:这种方式是所有集合调用的遍历方式

     
    
    package com.bjpowernode.java_learning;
    
    import java.util.*;
    
    ​
    
    public class D84_2_Iterator {
    
      public static void main(String[] args) {
    
        //创建集合对象
    
        Collection c = new LinkedList();
    
       
    
        //添加元素
    
        c.add(100);
    
        c.add(3.14);//自动装箱
    
        c.add(false);
    
       
    
        //迭代,遍历
    
        //1.获取迭代器对象
    
        //不需要关心底层集合的具体类型,所欲集合以来的迭代器都是了java.util.Iterator;接口
    
        //java.util.LinkedList$ListItr类是LinkedList集合所依赖的迭代器
    
        //java.util.AbstractLisr$Itr类是ArrayList集合所依赖的迭代器
    
        Iterator it = c.iterator();
    
        //迭代器是面向接口编程,it是引用,保存了内存地址,指向堆中的“迭代器对象”
    
        System.out.println(it);//java.util.LinkedList$ListItr@30c7dale  说明这是一个内部类
    
        //如果c是一个ArrayList,那么这里打印的是java.util.AbstractList$Itr@de6cd
    
       
    
       
    
        //2.开始调用方法,完成遍历,迭代
    
        while(it.hasNext()) {
    
          Object element = it.next();
    
          System.out.println(element);
    
        }
    
        /**
    
         * boolean b = it.hasNext();判断是否有更多的元素,如果有,就返回true
    
         * Object o = it.next();将迭代器向下移动一位,并且取出指向的元素
    
         * 原则:嗲用it.next()方法之前必须调用it.hasNext();
    
         *
    
         */
    
       
    
        //for循环
    
        for(Iterator its = c.iterator();its.hasNext();) {
    
          Object o = its.next();
    
          System.out.println(o);
    
        }
    
      }
    
    }

    三、源码:

    D84_1_CommonMethodOfCollection.java

    D84_2_Iterator.java

    https://github.com/ruigege66/Java/blob/master/D84_1_CommonMethodOfCollection.java

    https://github.com/ruigege66/Java/blob/master/D84_2_Iterator.java

    2.CSDN:https://blog.csdn.net/weixin_44630050

    3.博客园:https://www.cnblogs.com/ruigege0000/

    4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

     

  • 相关阅读:
    C# 冒泡排序
    C# IO流 File.Exists,Directory.Exists, File.Create,Directory.CreateDirectory
    UGUI 哪些显示在前方的问题
    UGUI Image血条或者进度条效果
    Unity 切换场景的时候让某个游戏对象不消失
    C# string型的转换成float型的
    Json 解析Json
    logging模块

    模块和包
  • 原文地址:https://www.cnblogs.com/ruigege0000/p/12319742.html
Copyright © 2011-2022 走看看