java-API之集合1——泛型

泛型

首先学习集合之前,我们需要了解下泛型,泛型,顾名思义就是广泛的类型,也可以理解为具体类型的标识(通用名),所以可以写出通用的代码。泛型就是结合集合使用的,它使用一对<>表示,用来检查集合重元素的类型

泛型的产生背景

我们都知道,数组可是存放相同数据类型数据的容器,如果存放的数据类型和定义的数组类型不同,在编译器就会报错,泛型也是想像数组一样,将错误尽可能地尽早暴露,即在编译期间暴露错误而不是运行期间

泛型的作用及测试

  • 将错误在编译期间暴露
public class Test1_Generic {
    public static void main(String[] args) {

        List<String> list = new ArrayList<String>();
        list.add("app");
        // 编译期间出现 类型不匹配 错误
        // list.add(100); //类型不对报错
    }
}    

 

  • 写出通用的代码
public class Test2_Generic {
    public static void main(String[] args) {
        // 打印数组中的元素
        Integer[] a = {1,2,3,4,5};
        Double[] b = {1.1,2.2,3.3};
        String[] c = {"apple","orange","pear","banana"};
        printArray(a); // 1 2 3 4 5 
        printArray(b);  // 1.1 2.2 3.3 
        printArray(c);  //  apple orange pear banana 

    }
    /*
     * 泛型方法 printArray 
     */
    private static <E> void printArray(E[] inputArray) {
        for(E element : inputArray) {
            System.out.printf( "%s ", element );
        }
        System.out.println();
    }
}            

 

注:如果上述功能不适用泛型实现,则不需重载printArray方法。通过泛型方法,可以解决几个重载方法解决的问题,此时泛型的通用性就显而易见。

posted @ 2020-03-08 10:04  技术狂-CYL  阅读(72)  评论(0)    收藏  举报