Java作业。I';我帮助理解为什么我的代码会编译,但会在编译器中留下关于数组问题的注释?

Java作业。I';我帮助理解为什么我的代码会编译,但会在编译器中留下关于数组问题的注释?,java,Java,注意:ArrayOperation.java使用未经检查或不安全的操作。 注意:使用-Xlint重新编译:未选中以获取详细信息 public class ArrayOperation{ public static void sort(Comparable[] c){ for (int i=1;i<c.length;i++){ Comparable key = c[i]; int p = i; while (p>0 && key.comp

注意:ArrayOperation.java使用未经检查或不安全的操作。 注意:使用-Xlint重新编译:未选中以获取详细信息

public class ArrayOperation{
public static void sort(Comparable[] c){
    for (int i=1;i<c.length;i++){
    Comparable key = c[i];
    int p = i;
    while (p>0 && key.compareTo(c[p-1])<0){
        c[p]=c[p-1];
        p--;
    }
    c[p] = key;
    }
}
公共类数组操作{
公共静态无效排序(可比[]c){

对于(int i=1;i0&&key.compareTo(c[p-1]),必须为java.lang.comparable提供类型参数, 如果您检查java.lang.Compariable的类型,它需要一个类型参数

Interface Comparable<T>
接口
因此,如果希望编译时警告消失,那么方法签名应该是

public static void sort(Comparable<SomeType>[] c){
公共静态无效排序(可比[]c){