本人尝试写一个排序的泛型方法,结果因为需要用到compareTo。但在编译器编译的时候发现,并不能使用。
后来翻书的时候发现,需要将
而对于泛型构造数组,不能用new
str=(T[])Array.newInstance(a.getClass().getComponentType(),a.length);进行构造
而泛型类的初始化,则用
sorts<String>sort1=new sorts<>(str);
对于泛型,若要使用compareTo,则不能用int类,得用Integer类
Integer[] number=new Integer[lo];
以快速排序为例,源代码如下!
import java.lang.reflect.Array; import java.util.Arrays; import java.util.Scanner; class sorts{ T[] str; sorts(T[]a){ str=(T[])Array.newInstance(a.getClass().getComponentType(),a.length); for(int i=0;i =0)lo++; if(lo sort2=new sorts<>(number); sort2.quick_sort(0,number.length); // Arrays.sort(number); for(int i=0;i Salin selepas log masuk
相关文章:
Atas ialah kandungan terperinci java中使用泛型方法的案例详解. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!