选择排序方法错误,不兼容的类型

时间:2014-10-10 23:38:25

标签: java sorting selection-sort

到目前为止,这是我的代码。我在第一个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;
            }
        }
    }
}

2 个答案:

答案 0 :(得分:5)

问题在于:list.length -1

我认为你想要的是i <= list.length - 1

答案 1 :(得分:0)

错误明确指出它需要布尔类型但找到了int。

list.length -1;

不会返回任何布尔值,它只返回一个整数。你也知道for(; condition;)语法。每个条件只根据布尔值决定。

您应该将其更改为

i < list.length -1;