-3

クイズであるスイングアプリを作成しようとしています。ボタンのクリックで jLabel を変更する必要がありますが、ボタンをクリックするとアプリがロックされます。誰かが私を正しい方向に向けることができますか?

私のボタンクリックコードは以下の通りです:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    String[] questions = {"test0","test1","test2","test3","test4","test5","test6"};
    String[] answers = {"","","","","","",""};
    int i = 0;

    do {
        jLabel2.setText(questions[i]);
        index.setText(String.valueOf(i));
        if (txtAnswer.getText().toLowerCase().equals(answers[i].toLowerCase())) {
            i++;
            jLabel2.setText(questions[i]);
        }
        else {
            add(lblWrong);
        }
    }
    while(i < 7);
}      

evt パラメータが使用されていないという警告が表示されますが、これは問題でしょうか?

ありがとうございました

4

2 に答える 2

1

do while ループは必要ありません。ボタンを押す方法に閉じ込められているかのように、答えが間違っているかのように、elseを入力し続け、それを離れることができず、アプリの動作が停止します. i < 7 かどうかをチェックする if ステートメントに置き換えます。

于 2014-07-02T16:04:06.783 に答える
1

ループのelse状態では、1 をまったく追加しないiため、インクリメントされない状況に陥る可能性があり、無限ループになります (プログラムがロックされます)。

于 2014-07-02T15:53:08.347 に答える