泛型的概述和优势

public static void main(String[] args) {
        List<String> list = new ArrayList<>();
        list.add("Java");
        list.add("Java2");
        // list.add(23);

        List<String> list1 = new ArrayList();
        list1.add("Java");
//        list1.add(23.3);
//        list1.add(false);
        list1.add("Spring");

//        for (Object o : list1) {
//            String ele = (String) o;
//            System.out.println(ele);
//        }

        for (String s : list1) {
            System.out.println(s);
        }

        System.out.println("---------------------");
        // 存储任意类型的元素
        List<Object> list2 = new ArrayList<>();
        list2.add(23);
        list2.add(23.3);
        list2.add("Java");

        // List<int> list3 = new ArrayList<>();
				// 泛型不支持基本数据类型
        List<Integer> list3 = new ArrayList<>();
    }

泛型的三种使用方式

泛型类

Untitled

泛型接口

第三块代码,实现类可以不加泛型参数

第三块代码,实现类可以不加泛型参数

泛型方法

Untitled

项目中哪里用到了泛型

自定义泛型类

泛型类概述