Java集合遍历实现方法及泛型通配

时间:2021-05-20

集合定义

集合,集合是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(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()); }

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章