ここから本文です

javaについてです。 今、Androidstudioでビンゴゲームを作成しています。 カード...

vah********さん

2019/6/1700:00:04

javaについてです。
今、Androidstudioでビンゴゲームを作成しています。
カードについては1~75の数値を配列に格納し、シャッフルしたのちに順次取り出していく方法で作成できました。

同様の方法でボールについても作成できました。

しかし、その後ランダムで生成したボールとカードの当たり判定がうまくできません。ネットなどを確認し、HashMapでキー値をボール番号とし、バリュー値でリーチ、ビンゴの判定(バリュー値の初期値を1とし、配列を使ってボールとカード記載の番号が被ったら0に変更。0が4つ並んだらリーチ、5つでビンゴ)をしようと考えています。バリュー値を変えるのにputメソッドが使えるのまではわかりました。ただ、ビンゴのボールが出た際に、putメソッドが実行されるようにコードが書けません。そのあたりでアドバイスいただけたらと思います。

いかんせん勉強を始めたばかりの初心者ですので説明に至らない点が多数あるとは思いますが、何卒ご容赦ください。

閲覧数:
35
回答数:
1
お礼:
100枚

違反報告

ベストアンサーに選ばれた回答

ugn********さん

2019/6/1802:12:14

vah********さん


どのような仕組みにしたいのか、文章から読み取りにくいのですが、
やり方に問題がありそうな気がします。

次のようにしたらどうでしょうか。

・カードのマス目(セルと呼ぶことにします)の情報をクラス化(class Cell)。
・Cellクラスは、「番号」「状態(穴を開けた/開けてない)」と2つの属性を持つ。
・カードは5×5のCellの配列を持つ。
・ビンゴのボールが出たら、配列を全部読み、番号があるかどうかをチェックする。


どうしてもMapを使いたいなら、キーを番号、値をCellオブジェクトにすればいいでしょう。
その場合、「配列を全部読む」という処理は必要なくなります。


とりあえず、こんなところでどうでしょうか。

この回答は投票によってベストアンサーに選ばれました!

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる