連合

2016-10-16 9 views
0

私は、配列の特定の数を作成して、特定の番号でそれらを満たすために、このコードを使用しています:連合

public void CreateVars() { 
    System.out.println("Enter the numbers of variables: "); 
    int i = s.nextInt(); 
    int[][] var = new int[i][]; 
    for (int j = 0; j < i; j++) { 
     System.out.println("Enter the number of values: "); 
     int p = s.nextInt(); 
     System.out.println("Enter the numbers: "); 
     var[j] = new int[p]; 
     for (int q = 0; q < p; q++) { 
      int n = s.nextInt(); 
      var[j][q] = n; 
     } 
    } 
} 

どのようにして作成された配列を使用して元のために、労働組合を行うことができます。ユニオンBユニオンCは、常に異なる数の配列が存在するためです。

+0

何もあなたの希望する結果?すべての数字を持つ単一の1次元配列ですか? –

+0

@TimothyTruckleはい。すべての配列の和集合を作成する場合、その配列を表示する単一の配列が必要です。 – Michael

+0

配列はvalues_を保持できますが、_は値を表示できません。 –

答えて

0
  1. 変更あなたの方法事前に

    おかげで作成された配列を返します。

  2. 2次元配列をパラメータとし、1次元配列を返す2番目のメソッドを作成します。この意志I 1-dimensionl標的配列のための変数を作成する新しい方法でSystem.out.println()

介しアレイコンテンツを表示するために後で

  • 使用Arrays.toString()を示すであろうように組合へ。 、パラメータの最初の次元をループ:そのループ内

    for(int[] subArray : parameterArray) 
    

    は、ターゲット変数の現在のサイズと電流subArrayのサイズの大きさに新しい一時的な1次元配列変数を作成します。

    int[] tempArray = Arrays.copyOf(targetArray,targetArray.length+subArray.length]); 
    

    現在の値をtemp配列の適切な位置にコピーします。

    targetArray

    ように、内側ループストアtempArrayを終え
    targetArray = tempArray;