-2

ユーザーが4桁の数字を選択する必要があるアプリを作成しています。これは、ランダムに選択された非表示の4桁の数字と比較されますが、コードを実行すると、選択した数字の比較について配列をチェックする必要があります。そして、乱数' Arrays.asList()。contains()) 'は、チェックしている配列がチェックしている値を持っているという事実を理解していないようです、何かアドバイスはありますか?

2つの変数を比較するコード:-

            guess.v1 = code.int1;
            guess.v2 = code.int2;
            guess.v3 = code.int3;
            guess.v4 = code.int4;


       int[] guess_list = { guess.v1, guess.v2, guess.v3, guess.v4 };



    if (Arrays.asList(guess_list).contains(home.value1)) {
        if (code.int1 == home.value1) {
            X1.setText("V");

            guess.c1 = GuessStatus.V;
        } else {
            X1.setText("S");
            guess.c1 = GuessStatus.S;
        }
    } else {
        X1.setText("X");
        guess.c1 = GuessStatus.X;
    }

乱数を生成するコード:-

                    Code.setOnClickListener(new View.OnClickListener() {

        public void onClick(View v) {

            Intent openCode = new Intent(b, code.class);
            // adventure_time checks whether there is a saved game already,
            // if 1, saved game,
            adventure_time = 0;

            // random number generation LET THE NUMBER GAMES BEGIN///
            Random a1 = new Random();
            random1 = new ArrayList<Integer>();
            check.fudge = 0;
            for (int index = 0; index < 4; index++) {
                random1.add(a1.nextInt(5) + 1);
                Log.v("MM", "" + random1.get(index));
            }

            value1 = random1.get(0);
            value2 = random1.get(1);
            value3 = random1.get(2);
            value4 = random1.get(3);
            startActivity(openCode);

        }

    });
4

1 に答える 1

4

あなたはArrays.asList自分が思っている電話をかけているわけではありません。おそらく期待しているではなく、実際にを作成しています。(プリミティブ型に対するジェネリックをサポートしていないため、Java のような型はありません。)List<int[]>List<Integer>List<int>

最も簡単な修正は、これを変更することです。

int[] guess_list = { guess.v1, guess.v2, guess.v3, guess.v4 };

これに:

Integer[] guess_list = { guess.v1, guess.v2, guess.v3, guess.v4 };

その後、適切に機能する を作成することList<Integer>になります。

于 2012-09-28T13:55:25.503 に答える