2015-04-29 120 views
-3

請幫我解決這個問題。我只是想將二維數組存儲到一維數組中。我想要的是我必須存儲將被動態創建的二維整數數組。將二維數組存儲到一維數組中

+0

我只是申報並根據用戶輸入初始化的一維整數數組之後,我創建了一個二維數組,我嘗試初始化單維數組的第一項,但我不能這樣做。它表示類型不匹配:無法從int [] []轉換爲int .. @Rod_Algonquin –

+0

通過SO的幫助中心。它告訴你如何在這裏發佈你的問題! –

回答

1

嘗試這樣的:

int[][] arr = new int[Rows][Cols]; 
int[] arr1D= new int[Rows * Cols]; 

Rows = arr.length; 
if (Rows > 0) { 
    Cols = arr[0].length; 
} else { 
    Cols = 0; 
} 

for (int row = 0, count = 0; row < Rows; row++) { 
    for (int col = 0; col < Cols; col++) { 
     arr1D[count] = arr[row][col]; 
     count++; 
    } 
} 
+0

我在這裏做錯了...公共靜態無效的主要(字符串[] args){ \t \t int numberOfArray = 0; \t \t System.out.println(「輸入要獲取的數組數:」); \t \t掃描儀掃描儀=新掃描儀(System.in); \t \t numberOfArray = scanner.nextInt(); \t \t creatingTwoDimensionalArrays(numberOfArray); \t \t \t \t } \t \t 公共靜態無效creatingTwoDimensionalArrays(INT NOA){ \t \t twoDiemnsionalArrayGroup =新INT(NOA); \t \t對(INT iteratorArray = 0; iteratorArray

+0

@SaravanaKumarChinnaraj: - 很難理解評論中的代碼。你能編輯你的問題並在那裏添加你的代碼嗎? –

1

一個做這件事的方式

import java.util.ArrayList; 

    public class Test1 { 

     public static void main(String[] args) { 
      int[][] twoDArrays={{10,5},{4,6},{9,8}}; 

      ArrayList<Integer> oneDArray= new ArrayList<Integer>(); 
      for(int i=0; i<twoDArrays.length;i++){ 
       for(int j=0;j<twoDArrays[i].length;j++){ 
        oneDArray.add(twoDArrays[i][j]); 
       } 
      }//printing onedArray 
      for(Integer s:oneDArray){ 
       System.out.println(s); 
      } 
     } 

} 

輸出:

10 
5 
4 
6 
9 
8