码迷,mamicode.com
首页 > 其他好文 > 详细

泛型和容器

时间:2018-07-26 22:10:12      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:问题   add   这一   com   容器   car   list()   概念   添加   

一.不使用泛型的容器

在JavaSE5之前,Java中是没有泛型这一概念的,那么容器没有泛型怎么使用呢?

代码如下:

ArrayList apples = new ArrayList();// 没有使用泛型
apples.add(new Apple());// 集合可以添加Apple对象
apples.add(new Car());// 也可以添加Car对象

在没有使用泛型是这个ArrayList类型的实例对象既可以加入Apple对象也可以加入Car对象类。

当我们明确的获得一个集合对象并且知道其类型时,可以没有问题的对其对象进行操作。

但是当我们在集合中拥有大量元素时遍历集合,并且我们自己也不知道取得的元素时哪一个类的对象时,那么就会出现问题。

通常我们可以使用关键字instanceof关键字来判断取得对象的类型然后进行操作代码如下:

public static void main(String[] args) {
        ArrayList apples = new ArrayList();// 没有使用泛型
        apples.add(new Apple());// 集合可以添加Apple对象
        apples.add(new Car());// 也可以添加Car对象
        apples.add(new Car());
        apples.add(new Car());
        apples.add(new Car());
        apples.add(new Car());
        apples.add(new Car());
        System.out.println(apples.size());
        for(int i=0;i<apples.size();i++) {
            if(apples.get(i)instanceof Apple) {//匹配Apple类时
                System.out.println(i+"号对象是苹果");
            }else {
                System.out.println(i+"号对象是车");
            }
        }
    }

技术分享图片

 

泛型和容器

标签:问题   add   这一   com   容器   car   list()   概念   添加   

原文地址:https://www.cnblogs.com/SAM-CJM/p/9374548.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!