0

Java は初めてです。お手柔らかにお願いします。

論文文の人称代名詞をチェックする簡単な教育アプリを作成します。私の問題は、メソッドが12回印刷されることです(12個の代名詞をチェックして1行を印刷するのではなく)。

public static void pronoun (String thesis){    

            String [] personalPronouns = {"I","me","you","we","us","our","he","him","she","her","they","them"};

            for (int i = 0; i < 12; i++){
                if (thesis.contains(personalPronouns[i])){
                    System.out.println("Oops! Looks like your thesis contains personal pronouns. Remember, avoid using I, you, me, we, us, our, etc. in persuasive essays.");
                } else {
                    System.out.println("Looks good. Now it's time to start writing! Your essay outline is saved to a txt file called EssayTutorOutline.");
                  }
            }
}

「私は論文を持っています」と入力した場合。これを返します:

いいね...

いいね...

いいね...

いいね...

いいね...

いいね...

おっとっと!...

いいね...

いいね...

いいね...

いいね...

いいね...

これはほとんどの人にとって明らかだと思います。答えを求めて一晩中グーグルで検索しました。どんな助けでも大歓迎です。

4

2 に答える 2

0

ループがあります。内部にはifステートメントがあり、テストが真の場合は1つ、テストが偽の場合は別のものを出力します。なぜ 12 行の出力を期待しないのでしょうか?

12 個の代名詞を調べて、そのうちのいずれかが使用されているかどうかを最後に報告することを意図している場合は、ループが完了するまで印刷を待つ必要があります。「何も見つからなかった」ことを意味するように初期化され、見つかった場合は「1つ見つかった」ことを意味するように設定する変数をお勧めします(その時点で、ループを停止できますが、そうではありません)。次に、ループの直後に if ステートメントを追加し、その変数をチェックします。

于 2013-10-18T00:45:38.257 に答える