栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA高级特性(五)——泛型

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA高级特性(五)——泛型

一、泛型的概述

        —— 泛型的本质就是参数化类型,所用是将原来的具体的类型参数化,然后再使用和调用的时候传入具体的参数。

        这种参数类型,可以用整改类、方法、接口中,分别称为泛型类、泛型方法、泛型接口。

        泛型的定义格式: <类型>:指定一种类型的格式,这里的类型可以看成形参

                                      <类型1,类型2,.....>:指定的是多种类型的格式,之间用逗号隔开

           泛型的好处:把运行时期的问题提前到了编译期间;避免了强制类转换

二、泛型类的定义格式

      泛型类定义格式:修饰符   class   类名<类型>{}

                                  eg:public  class  Gneric {}

           此处的T代表的是数据类型,即标识符:T,E,K,V,调用什么类型对象时,就会使用什么类型

 三、泛型方法

格式: 修饰符 <类型> 返回值类型 方法名(类型 变量名){}

           eg: public void show (T t) { }

 四、泛型接口

格式:修饰符 interface 接口名 <类型>{}

eg:public interface Generic { }

五、类型通配符

——为了表示各种泛型List的父类,可以受用类型通配符

               类型通配符

              1. List:表示元素类型未知的list,它的元素可以匹配任何类型

               2. List :类型通配符的上限,表示该类型或其子类型。

               3. List: 类型通配符的下限,表示该类型或其父类型

eg:List list=new ArrayList();

        List list=new ArrayList();

         List list =new ArrayList();

 其中:父类—>子类:Object—Number—Integer

六、可变参数

            ——可变参数又称参数个数可变,用作方法的形参出现,那么方法参数个数就是i可变的了

格式:修饰符 返回值类型 方法名 (数据类型...变量名)

        eg:public static int sum(int...a){} 此处的a时一个数组,

        eg:public void sum(int b,int...a){} 此处多个参数时,应把可变参数放在最后。

可变参数的使用:

1、Arrays工具类中有一个静态方法

        public static List    asList (T...a) : 返回一个由指定数组支持的固定大小的列表 (可以有重复数)

注意:不能用add,remove 只能 用set

public class bb {
    public static void main(String[] args) {
        List s = Arrays.asList(1, 2, 3, 4);
        s.set(1,5);
        System.out.println(s);//输出[1, 5, 3, 4]
        
    }
}

2、List 接口中 由一个静态方法 (jdk9才有这个功能)

        public static List of(E...elements): 返回一个包含任意数量元素的不可变列表(可以有重复数)

注意:不能增、删、减

3、Set接口中有一个静态方法: (jdk9才有这个功能)

        public static Set of (E...elements) :返回一个包含任意数量元素的不可变集合(不可以重复)

注意:不饿能增删减,也不能有重复元素

转载请注明:文章转载自 www.mshxw.com
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号