Java集合遍歷實現方法及泛型通配
集合定義
集合,集合是java中提供的一種容器,可以用來存儲多個數據。
特點:數組的長度是固定的。集合的長度是可變的。集合中存儲的元素必須是引用類型數據‘
普通for遍歷:
//案例一ArrayList<Person> arr=new ArrayList<Person>(); arr.add(new Person('張三',19)); arr.add(new Person('小紅帽',20)); arr.add(new Person('小紅帽',23)); for(int i=0;i<arr.size();i++){ System.out.println(arr.get(i)); }
增強for循環遍歷:
案例二 Collection<Integer> arr=new ArrayList<Integer>(); arr.add(789); arr.add(456); arr.add(123); //增強for循環 /*for(元素的數據類型 變量 : Collection集合or數組){ }*/ for(Integer i:arr){ System.out.println(i); }
迭代器遍歷:
//案例三//1,創建集合對象。Collection<String> coll = new ArrayList<String>();coll.add('abc1');coll.add('abc2');coll.add('abc3');coll.add('abc4'); //2.獲取容器的迭代器對象。通過iterator方法。Iterator it = coll.iterator(); //3,使用具體的迭代器對象獲取集合中的元素。參閱迭代器的方法while(it.hasNext()){ System.out.println(it.next());}
Collection接口的基本方法
Collection接口是集合中的頂層接口,那么它中定義的所有功能子類都可以使用
創建集合的格式:
方式1:Collection<元素類型> 變量名 = new ArrayList<元素類型>();
方式2:Collection 變量名 = new ArrayList();
集合元素的向下轉型
Collection coll = new ArrayList();coll.add('abc');coll.add('aabbcc');coll.add(1);Iterator it = coll.iterator();while (it.hasNext()) { //由于元素被存放進集合后全部被提升為Object類型//當需要使用子類對象特有方法時,需要向下轉型 String str = (String) it.next(); System.out.println(str.length());}
泛型和通配符
類定義格式:修飾符 class 類名<代表泛型的變量> { }
接口定義格式:修飾符 interface接口名<代表泛型的變量> { }
限定泛型的下限:
//? extends Person 限定泛型的上限 //? super Person 限定泛型的下限 public static void get(Collection<? extends Person> c){ Iterator<?> it=c.iterator(); while(it.hasNext()){ //向下轉型 Object obj=it.next(); Person p=(Person)obj; System.out.println(p.getName()); }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。
相關文章:
