zoukankan      html  css  js  c++  java
  • 集合、迭代器、增强for

    collection 和 list set 和 ArrayList LinkedList HashSet LinkedHashSet的关系

    collection接口的方法

    add()   clear()  contains()  remove()  size()  toArray() 公用方法

    public static void method(){
            // 注意:集合中只能存放引用数据类型
                    //之所以集合中可以存放int类型的值是因为JDK5以后的自动装箱特性
                    ArrayList<Integer> list = new ArrayList<Integer>();
                    list.add(1);
                    list.add(2);
                    
                    for(int i = 0;i<list.size();i++){
                        System.out.println(list.get(i));
                    }
    //                for(int i:list){
    //                    System.out.println(i);
    //                }
        }
        public static void method2(){
            ArrayList<Person> list = new ArrayList<Person>();
            list.add(new Person("houyi",28));
            list.add(new Person("liyuanfang",27));
            list.add(new Person("wangzhaojun",18));
            for(Person p:list){
                System.out.println(p);
            }
            
            }
        public static void method3(){
            ArrayList<String> arr = new ArrayList<String>();
            arr.add("aaa");
            arr.add("aaa");
            arr.add("bbb");
            Object[] str = arr.toArray();
            for(int i = 0;i<str.length;i++){
                System.out.println(str[i]);
            }
            for(Object o:str){
                System.out.println(o);
            }
        }
        public static void method1(){
            Collection c = new ArrayList();
            c.add("123");
            c.add("456");
            //c.add(1);
            for(Object obj:c){
                String str = (String)obj;
                System.out.println(str.length());
            }
        }

    迭代器:用要进行迭代的集合调用方法来构建迭代器

     增强for:用来遍历集合和数组,底层就是个迭代器

    注意:next()方法的使用,调用一次指针就往下走一次,最好是把它赋给一个变量,然后对变量进行操作

    泛型:使用集合时,必须明确集合中元素的数据类型的方式

    有泛型的类:public ArrayList<E>{} 

    创建对象时,确定泛型类型

    有泛型的方法:public <E> E[] toArray(E[] arr){}

    调用方法时,确定泛型类型

    有泛型的接口:public interface Iterator<E>{} 

    定义实现类时,确定泛型类型 

    创建对象时,确定泛型类型(迭代器的使用)

    泛型的好处:把运行时期的类型转换问题,转移到了编译时期,避免了类型转换出错

    泛型通配符:当泛型的类型不确定时,使用泛型通配符,使用了泛型通配符之后只能使用object类中的共有方法

    通配符上限:?extends Person

    通配符下限:?super Person

    public static void main(String[] args) {
            // TODO Auto-generated method stub
            ArrayList<Person> list = new ArrayList<Person>();
            list.add(new Person("zzhangsan",20));
            list.add(new Person("lisi",22));
            ArrayList<Studnet> l = new ArrayList<Studnet>();
            l.add(new Studnet("xiaoming",22));
            l.add(new Studnet("xiaohong",21));
            printCollection(l);
        }
        public static void printCollection(Collection<?> list){
            Iterator<?> it = list.iterator();
            while(it.hasNext()){
                System.out.println(it.next());
            }
        }
  • 相关阅读:
    ARRAYLIST使用方法
    学习如何把数据库数据提取为XML(转)
    jquery常用技巧及常用方法列表
    邮件发送
    DataSet/XMl相互操作
    jquery Tab效果和动态加载
    Ajax 显示XML
    dropdownlist动态数据绑定
    sql 拼接
    javascriptxmlxslt操作
  • 原文地址:https://www.cnblogs.com/yelena-niu/p/9112445.html
Copyright © 2011-2022 走看看