sort
インターフェイスを使用して任意のタイプのデータをソートできる単純な関数を作成しようとしていComparable
ます。私はそれをやったと思いますが、特定の型の配列を引数として渡すのに問題があります。コードは
public class Main {
public static void main(String[] args) {
int[] arr= {12,14,11,6};
// The above gives error
// But this works : Comparable[] arr= {12,14,11,6};
Comparable b[]= Selection.sort(arr);
for (Comparable x:b)
System.out.println(x);
}
}
問題は何ですか? エラーは次のとおりです。Comparable is a raw type. References to generic type Comparable<T> shoulb be parameterized.
より明確にするために、残りのコードは次のとおりです。
public class Selection {
public static Comparable[] sort(Comparable[] a){
int N= a.length;
for(int i=0;i<N;i++){
int min=i;
for(int j=i+1;j<N;j++)
if(less(a[j],a[min]))
min=j;
exch(a,i,min);
}
return a;
}
// Other methods defined here
}