Arrays Java中返回int数组的问题

Arrays Java中返回int数组的问题,arrays,function,return-type,Arrays,Function,Return Type,我试图在该函数中反转后返回数组(或者至少我认为我是这样做的;不是问题所在),但我遇到了如下错误: 此方法必须返回int[]类型的结果 公共静态int[]arrayLeftRotation(int[]a,int-n,int-k) { int-iter=k-1; int arr[]=新的int[n]; 对于(int i=0;i4) { iter=0; } arr[i]=a[iter]; iter++; 返回arr; } } 因为缺少返回语句,所以可以。另外,如果在没有任何特定条件的情况下将re

我试图在该函数中反转后返回数组(或者至少我认为我是这样做的;不是问题所在),但我遇到了如下错误:

此方法必须返回int[]类型的结果

公共静态int[]arrayLeftRotation(int[]a,int-n,int-k)
{   
int-iter=k-1;
int arr[]=新的int[n];
对于(int i=0;i4)
{
iter=0;
}
arr[i]=a[iter];
iter++;
返回arr;
}
}
因为缺少返回语句,所以可以。另外,如果在没有任何特定条件的情况下将
return
放在
for
循环中,则可以避免
for
循环,因为这将在第一次迭代之后返回。因此,将return语句移出
for
循环,它应该编译为:

public static int[] arrayLeftRotation(int[] a, int n, int k) {   
    int iter = k-1;
    int arr[] = new int[n];
    for(int i=0; i<n;i++) {
        if(iter > 4) {
            iter = 0;
        }
        arr[i] = a[iter];
        iter++;           
    }
    return arr;
}
公共静态int[]arrayLeftRotation(int[]a,int-n,int-k){
int-iter=k-1;
int arr[]=新的int[n];
对于(int i=0;i 4){
iter=0;
}
arr[i]=a[iter];
iter++;
}
返回arr;
}

将返回置于循环之外。
public static int[] arrayLeftRotation(int[] a, int n, int k) {   
    int iter = k-1;
    int arr[] = new int[n];
    for(int i=0; i<n;i++) {
        if(iter > 4) {
            iter = 0;
        }
        arr[i] = a[iter];
        iter++;           
    }
    return arr;
}