我想使用代码中所示的 swap() 方法对数组进行排序。我想知道如何传递数组并对其进行排序。
public class Test {
public static void main(String[] args) {
int [] ar = {9, 4, 5, 3, 1, 8, 4, 2, 0};
System.out.println(Arrays.toString(ar));
for (int i = 0; i<ar.length-1; i++){
for (int j = i+1; j<ar.length; j++){
swap(ar[i], ar[j]);
}
}
System.out.println(Arrays.toString(ar));
}
private static void swap(int i, int j) {
int temp;
if(i>j){
temp = j;
j = i;
i= temp;
}
}
}
最佳答案
数组就像任何其他类型一样。如果要将数组传递给方法,请声明该类型的参数,例如
private static void swap(int[] ar, int i, int j) { ... }
^ This is a parameter of type int[].
请注意,您传递的 i
和 j
应该是索引,而不是数组中的值:
swap(ar, i, j);
并交换元素:
temp = ar[i];
ar[i] = ar[j];
ar[j] = temp;
关于java - 如何将数组和当前索引传递给 Java 中的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38622738/