Quantcast
Channel: 質問!ITmedia 新着質問(Java/253)
Viewing all articles
Browse latest Browse all 2439

java 格納した乱数それぞれにボタンを付け配置

$
0
0
2回目の質問させて頂きます。 java勉強中の初級者です。 前回乱数を重複させずに5行×5列の25個並べる方法を教えて頂きました。 この25個にボタンをつけて最終的にタッチナンバーのゲームを作りたいです。 (ランダムに並んだ数字1~25まで順番に押してくゲーム) 5行×5列のボタンを配置まではできたのですが、 (1)そのボタンそれぞれに毎回違う乱数と紐付ける方法 (2)1~25まで順番に押してく処理 (3)そのボタンにその都度の数字に合わせた画像を付ける方法(押したら押された時用の画像に変わる) 上の3つが今悩んでいて、今回お聞きしたいところです。 (2)はifを使って 『25は24を押した後じゃないと押せない、24は23を押した後じゃないと押せない。』 みたいに一つずつ処理していくのかなぁと言うイメージです。 (合ってるのか効率いいのかもわかりませんが。) (3)はこの数字が来たらこの画像、あらかじめ指定しておくのかな?と言うイメージです。 (これも合ってるのかすらわかりません。) 前回教えて頂いたソースコードを載せておきます。 import java.util.ArrayList; import java.util.Collections; import java.util.Formatter; import java.util.List; class RandomArray { public static void main(String[] args) { int n = 5; int[][] a = new int[n][n]; List shuffled = new ArrayList(); // initialize for (int i = 0; i < n * n; i++) shuffled.add(i + 1); // shuffle Collections.shuffle(shuffled); System.out.println("shuffled: " + shuffled); // set int c = 0; for (int i = 0; i < n; i++) for (int j = 0; j < n; j++) a[i][j] = shuffled.get(c++); // output StringBuilder sb = new StringBuilder(); Formatter f = new Formatter(sb); for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) f.format("%2d ", a[i][j]); f.format("\n"); } System.out.print(f); } } やりかた、考え方でもありがたいのですが、ソースコードも教えて頂けたら大変ありがたいです。 ぜひご教授頂きたいです。 よろしくお願いします。

Viewing all articles
Browse latest Browse all 2439

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>