私は私の演習の試合を行いました。オプションがyの場合は、新しいプレイヤーのために今までに入力された文字列のうち、 "プレイヤーはすでにチームに入っています"が3回発生します。ifとelse statemenhtで何が間違っていますか?
import java.util.ArrayList;
import java.util.Scanner;
public class Players {
public static void main(String[] args) {
ArrayList<String> players = new ArrayList<>();
players.add("Torres");
players.add("Ronaldo");
players.add("Rooney");
System.out.println("This is the current items in the players \n" + players);
Scanner sc = new Scanner(System.in);
System.out.println("Do you want to buy more players ???? y/n");
String option = sc.nextLine();
if (option.equalsIgnoreCase("y")) {
System.out.println("Please enter your favorite player ");
String newplayer = sc.nextLine();
for (int i = 0; i < players.size(); i++) {
if (newplayer.equalsIgnoreCase(players.get(i))) {
System.out.println("The player is already in the team ");
} else {
players.add(newplayer);
}
}
System.out.println("New and old players are " + players);
} else {
System.out.println("The current players we have are " + players);
}
}
}
ああ問題は、SECは、あなたのループ – DarkV1
ヒントに関係しています...私は解決策を投稿してみましょう...です:それぞれがチェックするとき、何が起こります人は新しいプレーヤーと同等ではありませんか?ヒント2:プレイヤーに追加する意思決定はいつ行うべきですか(ループの適切な場所にありますか?) – Pshemo
まったく...同じプレーヤーではない人を追加します。インデックスがまだ0の場合でも、 – DarkV1