我正在尝试创建一个按升序对五个整数排序的程序。我从来没有遇到过一个取消引用的错误,所以我很好奇我做错了什么。
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]);
}
}
}
我在这一行得到了错误。
if (temp.compareTo(tempB) < 0)
谢谢!
temp
是int类型,它没有方法。你应该直接写
if(temp < tempB)
不能在int
(基本类型)上调用compareTo
方法
使用:
if(temp < tempB)