簡単な方法の 1 つは、javax.swing.panel を拡張して paintComponent() メソッドをオーバーライドする新しいクラスを作成することです。
新しいクラスのコンストラクターで、2D-Array への参照を渡します。
オーバーライドした paintComponent() メソッドで、次のようにします。
public void paintComponent(Graphics g) {
for (int x=0;x<arrayWidth;x++) {
for (int y=0;y<arrayHight;y++) {
switch (array[x][y]) {
case 1: g.setColor(Color.RED);break;
case 2: g.setColor(Color.BLUE);break;
case 3: g.setColor(Color.GREEN);break;
case 4: g.setColor(Color.YELLOW);break;
}
g.drawRect(x*10,y*10,10,10);
}
}
}
必要に応じて数字と色を合わせてください。
編集: switch ステートメントで使用できないある種の値がある場合 (たとえば、古い Java バージョンのカスタム クラスや文字列など)、if/elseif に置き換えます。
public void paintComponent(Graphics g) {
for (int x=0;x<arrayWidth;x++) {
for (int y=0;y<arrayHight;y++) {
if (array[x][y].equals(value1)) {
g.setColor(Color.RED);
} else if (array[x][y].equals(value2)) {
g.setColor(Color.BLUE);
} else if (array[x][y].equals(value3)) {
g.setColor(Color.GREEN);
} else {
g.setColor(Color.YELLOW);
}
g.drawRect(x*10,y*10,10,10);
}
}
}