我想在main方法中调用代码,但它似乎并没有真正起作用.
public class RecursiveSelectionSort {
public static void sort(double [] list){
sort(list, 0, list.length -1);
}
public static void sort(double [] list, int low, int high){
if (low < high){
int indexOfMin = low;
double min = list[low];
for(int i = low + 1; i <= high; i++){
if(list[i]< min){
min = list[i];
indexOfMin = i;
}
}
list[indexOfMin] = list[low];
list[low] = min;
sort(list, low + 1, high);
}
}
public static void main(String [] args){
double [] list = {3.0,4.0,1.0};//I tried but it doesn't work
System.out.print(sort(list));//it doesn't go to sort(list);
}
}
Run Code Online (Sandbox Code Playgroud)
我想知道我是否可以打电话给它.这似乎很容易,但真的令人困惑.
该方法sort返回void,但您尝试将其结果传递给print.试试这个:
double [] list = {3.0,4.0,1.0};
sort(list);
System.out.print(Arrays.toString(list));
Run Code Online (Sandbox Code Playgroud)
注意我也使用了实用方法Arrays.toString,这是必要的,因为数组本身不会覆盖toString以显示其内容.