我想交换数组的元素,所以我创建了一个方法来完成它。 该方法采用整数数组和两个索引,然后交换给定索引处的元素。但是,我不知道如何处理声明的变量。我不知道这个方法是否需要循环,但我添加了它。这是代码。
public static int[] swapElement(int[] a, int i1,int i2) {
int temp=i1;
int swap=temp;
for (int i=0;i<a.length;i++) {
if (a.length>i1) {
temp=i2;
}
}
return a;
}
答案 0 :(得分:4)
我无法理解你的代码应该做什么,但正确的交换应该是这样的:
public static void swapElement(final int[] a, final int i1, final int i2) {
final int temp = a[i1];
a[i1] = a[i2];
a[i2] = temp;
}
当然,您可以添加边界检查或创建新数组,而不是在传递的数组中进行更改
答案 1 :(得分:0)
尝试这样的事情:
public static int[] swapElement(int[] a , int i1, int i2)
{
int temp = a[i2];
a[i2] = a[i1];
a[i1] = temp;
}
答案 2 :(得分:0)
由于你需要使用方法交换数组元素,我建议你实例化一个全局数组变量。
int arr1[] = new int[length];
int arr2[] = new int[length];
public static void swapElement(final int i1, final int i2) {
{
int temp = arr1[i1];
arr1[i1] = arr2[i2];
arr2[i2] = temp;
}