标签:
//编写一个泛型方法,自动将Object类型的对象转换成其他类型。
private static <T> T autoConvert(Object obj){ return (T)obj; }
//定义一个方法,可以将任意类型的数组中的所有元素填充内容为相应类型的某个对象 private static <T> void fillArray(T[] a,T obj){ for(int i=0;i<a.length;i++){ a[i]=obj; } }
private static void printObject1(Collection<?> collection){ System.out.println(collection.size()); for(Object o:collection){ System.out.println(o); } }
//采用自定义泛型方法的方式打印出任意参数化类型的集合中的所有内容。 private static <T> void printObject2(Collection<T> collection,T obj){ for(Object o:collection){ System.out.println(o); } collection.add(obj);//T的方式可以向集合中进行添加 }
//定义一个方法,把任意参数类型的集合中的数据安全地复制到相应的数组中 private static <T> void copy1(Collection<T> dest,T[] src){ for(int i=0;i<src.length;i++){ dest.add(src[i]); } } copy1(new Vector<String>(),new String[]{}); copy1(new Vector<Date>(),new String[]{});//出错!传播:Vector进行参数化时,指定了T就是Date,那么后面的另一个参数T 就必须是Date[]
//定义一个方法,把任意参数类型的一个数组中的数据安全地复制到相应类型的另一个数组中。
private static <T> void copy2(T[] dest,T[] src){ }
swap(new String[3],3,4)—>static <E> void swap(E[] a,int i,int j)
add()—>static <T>T add(T a,T b)
fill(new Integer[3],3.5f)—>static <T> void fill(T[] a,T v)
int x=add(3,3.5f)—>static <T> T add(T a,T b)
copy(new Integer[5],new String[5])—>static <T> void copy(T[] a,T[] b);
标签:
原文地址:http://www.cnblogs.com/qq-757617012/p/4271873.html