zoukankan      html  css  js  c++  java
  • 记录几个经常用到的泛型方法定义模板

    泛型方法的定义

        /**
         * 泛型参数的无返回值方法
         *
         * 1、public 与 返回值中间<T>非常重要,可以理解为声明此方法为泛型方法。
         * 2、只有声明了<T>的方法才是泛型方法,泛型类中的使用了泛型的成员方法并不是泛型方法。
         * 3、<T>表明该方法将使用泛型类型T,此时才可以在方法中使用泛型类型T。
         * 4、与泛型类的定义一样,此处T可以随便写为任意标识,常见的如T、E、K、V等形式的参数常用于表示泛型。
         *
         * @param t
         * @param <T>
         */
        public <T> void show(T t){
        }
    
        /**
         * 泛型参数的有返回值方法
         *
         * @param t
         * @param <T>
         * @return
         */
        public <T> T get(T t){
            return t;
        }
    
        /**
         * 多个泛型参数有返回值的方法
         *
         * @param t
         * @param k
         * @param <T>
         * @param <K>
         * @return
         */
        public <T, K> K get(T t, K k){
            return k;
        }  

    工作中使用频率较高的几种泛型方法

        /**
         * 泛型方法介绍
         *
         * @param t
         * @param <T>
         * @return
         */
        public <T> T genericMethod(T t) {
            return t;
        }
    
        /**
         * 带有限定符的泛型方法
         *
         * @param t
         * @param <T>
         * @return
         */
        public <T extends Lingyejun> T genericMethod(T t) {
            return t;
        }
    
        /**
         * 泛型集合的方法
         *
         * @param eList
         * @param <E>
         * @return
         */
        public <E extends Lingyejun> List<E> genericMethod(List<E> eList) {
            return eList;
        }
    
        /**
         * 泛型集合的定义
         *
         * @param vCollection
         * @param <V>
         * @return
         */
        public <V extends Lingyejun> Map<String, V> genericMethod(Collection<V> vCollection) {
            return null;
        }
    

      

    本篇文章如有帮助到您,请给「翎野君」点个赞,感谢您的支持。

    作者:翎野君
    出处:http://www.cnblogs.com/lingyejun/
    若本文如对您有帮助,不妨点击一下右下角的【推荐】。
    如果您喜欢或希望看到更多我的文章,可扫描二维码关注我的微信公众号《翎驿》。
    转载文章请务必保留出处和署名,否则保留追究法律责任的权利。
  • 相关阅读:
    CSS简单的四种引入方式
    html之表单标签
    html基础标签之head和body标签
    Python之协程的实现
    Python之实现不同版本线程池
    Python多进程之multiprocessing模块和进程池的实现
    Python之queue模块
    sqlserver 时间格式化
    关于sql server 代理(已禁用代理xp)解决办法
    sqlserver如何启动数据库邮件
  • 原文地址:https://www.cnblogs.com/lingyejun/p/14672803.html
Copyright © 2011-2022 走看看