0 と 1 のすべての可能な組み合わせを 4 次元で含む文字列配列の配列リストを作成しようとしています。つまり、[0,0,0,0] は 1 つの組み合わせであり、[0,0,0,1] は別の組み合わせです。$2^4$ の合計組み合わせがあるため、いくつかのネストされたループを使用してこの配列リストを生成しています。ただし、ループを実行しようとすると、「メモリ不足」エラーが発生します。見てみましょう:
String[] t4 = new String[4];
ArrayList<String[]> list4 = new ArrayList<String[]>();
for(int i=0; i<= 1; i++)
{
String count = Integer.toString(i);
t4[0]=count;
list4.add(t4);
for(int j=0; j<= 1; j++)
{
String count1 = Integer.toString(j);
t4[1]=count1;
list4.add(t4);
for(int k=0; k<= 1; k++)
{
String count2 = Integer.toString(k);
t4[2]=count2;
list4.add(t4);
for(int m=0; m<= 1;)
{
String count3 = Integer.toString(m);
t4[3]=count3;
list4.add(t4);
t4 = new String[4];
}
}
}
}
私のループに何か問題がありますか?または、目的の配列リストを生成する別の方法はありますか?