泛型方法的定义
代码语言:javascript
复制 /**
* 泛型参数的无返回值方法
*
* 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;
}
工作中使用频率较高的几种泛型方法
代码语言:javascript
复制 /**
* 泛型方法介绍
*
* @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;
}