黑马程序员技术交流社区

标题: 泛型类型的小问题 [打印本页]

作者: 快乐的黑马    时间: 2014-1-10 11:13
标题: 泛型类型的小问题
问题:为什么这么做都行?Collecton里面不是要装同一类型元素吗?

import java.util.ArrayList;
import java.util.Collection;
public class GenericTest {
       
        public static void main(String[] args) {
               
               
               
                Collection cos = new ArrayList();
               
                cos.add("haha");
               
                printCollection(cos);
               
        }
        public static void printCollection(Collection<Object> cols){
                cols.add(12);
                for(Object obj : cols ){
                        System.out.println(obj);
                }
                cols.add(12);
        }

}


作者: 恩恩    时间: 2014-1-10 11:19
如果把12当做字符串是不是就可以看做是一种数据类型了
作者: 渐渐不懂了    时间: 2014-1-10 11:31
由于JDK1.5的新特征具有自动打包功能,把12当做Integer对象装入里面,你接收的是Object,整型也属于Objectl类型的子类所以可以装进去
作者: IT人    时间: 2014-1-10 15:04
Collection<Object> cols你给集合加了泛型Object类型的。
因为在JDK1.5新特性中有自动装箱功能,所以Integer和String类型都属于Object类型




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2