Java-泛型

1.什么是泛型?

泛型:对要管理的数据进行类型限定,方便数据的处理。泛型也可以理解为就是限制我们的数据类型。类型检查机制。

2.为什么要使用泛型?

在往集合中存储数据的时候缺乏类型检查,不安全,而且获取元素 需要进行强制类型转换,获取元素时,不方便对元素进行相应得其他操作。

好处:省略了装箱和拆箱,效率高;类型安全。

3.泛型的使用

不使用泛型的时候,存储的时候很方便,但是使用的时候很麻烦

使用泛型之后,那么集合只能存储特定类型的数据,别的类型是无法存储的

泛型类型必须是对象类型

 在创建泛型类对象时没有指定相应得泛型类型。则默认为Object类型

语法:

List泛型:List<类型>名字=new ArrayList<类型>();

Map泛型:Map名字=new HashMap<>();

Set泛型:Set<类型>名字=new HashSet<>();

指定在该集合中存储指定的类型

JDK1.7时new ArrayList<类型>的类型必须要写而JDK1.8后可以省略:

List<类型>名字=new ArrayList<>();

List集合使用泛型:

//定义String类型,此时集合中只能存储String类型的数据而且定义使用的类型必须是对象类型
        List list=new ArrayList();
        list.add("张三");
        list.add("李四");
        list.add("王五");
        String s1=list.get(2);
       // System.out.println(s1);
        //循环遍历输出集合里的内容此时只需要使用定义的类型来接收即可
        for(String s2:list){
            System.out.println(s2);
        }

Map集合使用泛型:

 //定义一个HashMap集合给定的键类型为String值类型为Inreger
        Map hashmap=new HashMap<>();
        hashmap.put("age",18);
        hashmap.put("tall",12);
        //循环遍历输出键和值
        for (String s1:hashmap.keySet()){
            System.out.println("键:"+s1);
            System.out.println("值:"+hashmap.get(s1));
        }

你可能感兴趣的:(java,idea,intellij,idea)