2012-04-20 9 views
1

可能性のある2次元配列を作成するための素早く簡単な方法は何でしょうか?可能性のある集合を作成するJavaの素早い方法

{{0,1},{0,2},{0,3},{0,4},{1,2},{1,3},{1,4},{2,3},{2,4},{3,4}} 

数が6であれば、事前に

{{0,1},{0,2},{0,3},{0,4},{0,5},{1,2},{1,3},{1,4},{1,5},{2,3},{2,4},{2,5},{3,4},{3,5},{4,5}} 

ありがとう:数が5であれば

は例えば、私は配列になりたいです。

答えて

6
List<int[]> a = new ArrayList<int[]>(); 
for (int i = 0; i < n; i++) { 
    for (int j = i + 1; j < n; j++) { 
     a.add(new int[]{i, j}); 
    } 
} 
return (int[][])a.toArray(new int[0][0]); 
+0

ありがとうございます。しかし、これを2次元のint配列に変更するにはどうすればよいですか? a.toArrayはObject []からint [] []に変換できないというエラーを表示します。 – Dennis

+0

申し訳ありませんが、 'new int [0] [0]'を 'toArray'に渡し、結果は' int [] [] 'にキャスト可能です。編集されました。 –

+0

パーフェクト。ありがとうございました!!! – Dennis