テーブルとして提供されるデータを保存する必要があります。Java で何を使用すればよいですか?
列と行を形成するキーはオブジェクトであるため、トリプレットとして表現できる構造が必要です。 <Object Row,Object Col, Object Val>
ここで、Row、Col ごとに 1 つの val のみがあり、すべての Row X Col に対して値があります。
または、単純な二次元配列を使用して、インデックスを対応するオブジェクトに変換する必要がありますか?
テーブルとして提供されるデータを保存する必要があります。Java で何を使用すればよいですか?
列と行を形成するキーはオブジェクトであるため、トリプレットとして表現できる構造が必要です。 <Object Row,Object Col, Object Val>
ここで、Row、Col ごとに 1 つの val のみがあり、すべての Row X Col に対して値があります。
または、単純な二次元配列を使用して、インデックスを対応するオブジェクトに変換する必要がありますか?
Guava は、Table
必要なコレクションを提供します。詳細については、Guava ユーザーガイドを参照してください。
使用例:
Table<Integer, Integer, Object> myTable = HashBasedTable.create();
myTable.put(1, 2, "foo"); // put an object in row 1, column 2.
Guava を使用したくない場合は、以下に示すように 2 次元配列を使用してください。
Object[][] myTable2 = new Object[5][5];
myTable2[0][1] = "foo";
Guava がオプションでない場合はMap<Coordinate, Val>
、 Coordinate が行と列のオブジェクトを含むカスタム オブジェクトであり、equals と hashCode を適切に実装する を使用します。
HashMap<Object, ArrayList> myTable = new HashMap<Object, ArrayList>();