Java 温度比较错误。不能取消对Int的引用

Java 温度比较错误。不能取消对Int的引用,java,sorting,int,dereference,Java,Sorting,Int,Dereference,我试图创建一个程序,按升序对五个整数进行排序。我以前从未遇到过解引用错误,所以我很好奇我做错了什么 Scanner input = new Scanner(System.in); int[] a = new int[5]; for (int i = 0; i < 5; i++) { System.out.println("Please enter integer # "+ 1 + i);

我试图创建一个程序,按升序对五个整数进行排序。我以前从未遇到过解引用错误,所以我很好奇我做错了什么

           Scanner input = new Scanner(System.in);
        int[] a = new int[5];
        for (int i = 0; i < 5; i++) {
            System.out.println("Please enter integer # "+ 1 + i);
            int temp = input.nextInt();
            a[i] = temp;
        }


        System.out.println("Sorted from lowest to highest");


        for (int i = 0; i < 5; i++) {
            for (int j = 0; j < 5; j++) {
                int temp = a[i];
                int tempB = a[j];
                if (temp.compareTo(tempB) < 0) {
                    a[i] = tempB;
                    a[j] = temp;
                }
            }
        }

        for (int i = 0; i < 5; i++) {
            System.out.println(a[i]);
        }
    }
}
扫描仪输入=新扫描仪(System.in);
int[]a=新的int[5];
对于(int i=0;i<5;i++){
System.out.println(“请输入整数#”+1+i);
int temp=input.nextInt();
a[i]=温度;
}
System.out.println(“从最低到最高排序”);
对于(int i=0;i<5;i++){
对于(int j=0;j<5;j++){
int temp=a[i];
int tempB=a[j];
如果(温度比较到(温度B)<0){
a[i]=tempB;
a[j]=温度;
}
}
}
对于(int i=0;i<5;i++){
系统输出println(a[i]);
}
}
}
我在这条线上发现了错误

if (temp.compareTo(tempB) < 0) 
if(温度比较到(温度B)<0)
谢谢

temp
是int类型,它没有方法。你应该写下来

if(temp < tempB)
if(温度
您不能在
int
基本类型)上调用
compareTo
方法

使用:

if(temp < tempB)
if(温度
感谢您的快速回复。这非常有效。