2 つの 2 次元配列を連結する必要がある状況があります。
Object[][] getMergedResults() {
Object[][] a1 = getDataFromSource1();
Object[][] a2 = getDataFromSource2();
// I can guarantee that the second dimension of a1 and a2 are the same
// as I have some control over the two getDataFromSourceX() methods
// concat the two arrays
List<Object[]> result = new ArrayList<Object[]>();
for(Object[] entry: a1) {
result.add(entry);
}
for(Object[] entry: a2) {
result.add(entry);
}
Object[][] resultType = {};
return result.toArray(resultType);
}
この投稿で 1 次元配列の連結の解決策を見てきましたが、2 次元配列で機能させることができませんでした。
これまでのところ、私が思いついた解決策は、両方の配列を反復処理し、各メンバーを ArrayList に追加してから、その配列リストの toArray() を返すことです。もっと簡単な解決策があるに違いないと確信していますが、これまでのところ解決策を見つけることができませんでした。