用于放置泛型的类型参数的尖括号应出现在方法的所有修饰符之后和返回类型之前。
要描述的话,很多话都说不完,直接例子:
@把任意类型的集合元素复制到相应类型的数组中
copy1(new Vector<String>(),new String[10]);
copy2(new Date[10],new String[10]);
//copy1(new Vector<Date>(),new String[10]);
private static<T> void copy1(Collection<T> src,T[] desc){
int i=0;
for(T obj : src){
desc[i++]=obj;
}
}
//把任意类型的数组复制到同类型的另一个数组中
private static<T> void copy2(T[] desc,T[] src){
int i=0;
for(T obj : desc){
src[i++]=obj;
}
}
@打印出任意参数类型中的所有元素
private static<T> void printCollection(Collection<T> collection,T obj2 ){
for(T obj : collection){
System.out.println(obj);
}
collection.add(obj2);
}
@定义一个 方法,可以将任意类型的某个数组填充为相应类型的某个对象
private static<T> void fillArray(T[] a,T obj){
for(int i=0;i<a.length;i++){
a[i] = obj;
}
}
@定义一个 方法,自动将Object类型的对象转换成其它类型
private static<T> T autoConvert(Object obj){
return (T)obj;
}
|