到目前为止,这是我的代码。我在第一个for语句中得到了一个不兼容的类型。 必需:布尔值 发现:int
我不太清楚我需要做些什么来解决这个问题。
public void selectionSort(int[] list){
//implement selection sort here.
for (int i = 0;list.length -1;i++){
int smvi = i;
for(int j = i+1;j<list.length;j++){
if(list[j] < list[smvi]){
smvi=j;}
if(i!=smvi){
int temp = list[i];
list[i] = list[smvi];
list[smvi] = temp;
}
}
}
}
答案 0 :(得分:5)
问题在于:list.length -1
我认为你想要的是i <= list.length - 1
答案 1 :(得分:0)
错误明确指出它需要布尔类型但找到了int。
list.length -1;
不会返回任何布尔值,它只返回一个整数。你也知道for(; condition;)语法。每个条件只根据布尔值决定。
您应该将其更改为
i < list.length -1;