1

インデックス作成に関する質問があります。キーとキーの座標のデータベースを取得するために、別のクラスで HashMap を作成しました。

public class Reference_Map {

private static HashMap<String, Object[][]> map;

public HashMap<String, Object[][]> getMap() {
    return map;
}

public void setMap() {
    map = new HashMap<String, Object[][]>();
    map.put("A1", new Object [0][0]);   map.put("A2", new Object [0][1]);   
    map.put("A3", new Object [0][2]);
    map.put("B1", new Object [1][0]);   map.put("B2", new Object [1][1]);   map.put("B3", new Object [1][2]);
    map.put("C1", new Object [2][0]);   map.put("C2", new Object [2][1]);   map.put("C3", new Object [2][2]);

これはマップのほんの一部ですが、A から P、1 から 24 (A1 から P24) まで、さらに多くのエントリがあります。JTable にアクセスするためのキーの座標を取得したかったので、このようにすることにしました。私の意図は、テーブルの「setValueAt」関数を使用することでしたが、(Object o, int row, int col) が正しい必要があるようです。だから私の質問は、どのようにキーの座標を取得するのですか?テーブルに値を設定するために使用できますか? または、このように本当にできない場合、上記の機能を使用できる方法でデータベースを保存するにはどうすればよいですか?

私が試したもののいくつかのサンプル:

Reference_Map rm = new Reference_Map();
for (String s: rm.getMap().keySet()) {
  if (s.equals(ID)) {
    this.table1.setValueAt(result_short, rm.getMap().get(ID));
  }
}

ID は、マップの不明なキーを含む文字列です。result_short は、Jtable (プライベート JTable table1) に書き込まれる文字列です。テーブル自体は次のように構成されます。

    String[] columnNames = {"1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "16", "17", "18", "19", "20", "21", "22", "23", "24"};
    this.data = new Object[16][24];
    this.table1 = new JTable(this.data, columnNames);

あなたが私を助けてくれることを願っています、試してくれてありがとう

4

1 に答える 1