JavaSE进阶

12.1.1 为什么要使用泛型

那么为什么要有泛型呢,直接Object不是也可以存储数据吗?

  • 解决元素存储的安全性问题,好比商品、药品标签,不会弄错
  • 解决获取数据元素时,需要类型强制转换的问题,好比不用每回拿商品、药品都要辨别
  • 泛型就是为了解决哪种在声明时不能确定类型,但在使用时才能确定类型的情况

     

         public static void main(String[] args) {

             /*ArrayList list = new ArrayList();

             list.add(1);

             list.add("java");

             list.add(2);

     

             //麻烦

             int i = (int) list.get(0);

             //不安全

             int j = (int) list.get(1);*/

     

             ArrayList<Integer> list = new ArrayList<Integer>();

             list.add(1);

    //        list.add("java");//类型检查,安全   在编译期间就确保类型安全

             list.add(2);

     

             //省事

             int i = list.get(0);

             int j = list.get(1);

         }

    12.1.2 掌握集合中的泛型使用