2017-09-18 40 views
1

我試圖返回數組返回一個int數組(或至少這是我覺得我做;不是問題)這個函數裏面,但我得到這樣的錯誤:問題與倒車後視在Java中

此方法必須返回類型爲int []

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; 
    } 
} 
+0

放的回報。 –

回答

1

那麼既然有缺少return語句的結果。此外,如果您將return置於其中,而沒有任何特定條件,則可以避免使用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; 
}