• java 泛型


    一、什么是泛型?

       泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,

    就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。

    /*
                定义了一个List类型的集合,先向其中加入了两个int类型,随后加入一个String类型的值。
                这是完全允许的,因为此时list默认的类型为Object类型,所以在编译阶段正常。在之后的循环中,
                由于忘记了之前在list中也加入了String类型的值或其他编码原因,所以运行时会出现“java.lang.ClassCastException”异常。
                因此,导致此类错误编码过程中不易发现。
          */
        public static void main(String[] args) {
            List list=new ArrayList();
            list.add(100);
            list.add(200);
            list.add("ABC");
            for(int i=0;i<list.size();i++){
                Integer math=(Integer) list.get(i);//java.lang.ClassCastException
                System.out.println(math);
            }
        }

     

    /* 
         * 通过List<Integer>,直接限定了list集合中只能含有Integer类型的元素,
         * 由于编译器已经能够确认它是Integer类型了。所以在往集合找中添加String
         * 元素时会提示编译错误
         */
        public static void main(String[] args) {
            List<Integer> list=new ArrayList<Integer>();
            list.add(100);
            list.add(200);
            list.add("adsa")//提示编译错误
            for(int i=0;i<list.size();i++){
                Integer math=(Integer) list.get(i);
                System.out.println(math);
            }
        }

     

     

     

     

     

  • 相关阅读:
    【poj 1087 a plug for UNIX】
    收集 数据库的awr数据,生成报告
    power desinger 学习笔记三<批量执行sql语句>
    power desinger 学习笔记<二>
    power desinger 学习笔记<一>
    oracle中不曾熟悉的 to_char、to_number(未完待续)
    oracle 报错 :ORA-04052、 ORA-00604、 ORA-03106、 ORA-02063
    谈谈oracle中的临时表
    Oracle-在线重定义操作文档
    分享最近和同事处理的 解析XML的相关问题
  • 原文地址:https://www.cnblogs.com/jalja/p/5005078.html
Copyright © 2020-2023  润新知