Java不继续循环
我正在制作一个简单的for循环,以遍历ArrayList并向其中添加对象,但当我输入第一个对象时,什么都没有发生。看起来程序没有继续循环。以下是我所拥有的:Java不继续循环,java,arrays,loops,Java,Arrays,Loops,我正在制作一个简单的for循环,以遍历ArrayList并向其中添加对象,但当我输入第一个对象时,什么都没有发生。看起来程序没有继续循环。以下是我所拥有的: for (int i = 0; i < (numPlayers.nextInt()-1); i++){ System.out.println("what is player " + (i + 1) + " name?"); Scanner namePlayer = new Scanner(System.in);
for (int i = 0; i < (numPlayers.nextInt()-1); i++){
System.out.println("what is player " + (i + 1) + " name?");
Scanner namePlayer = new Scanner(System.in);
String playerName = namePlayer.nextLine();
playerList.add(new Player(playerName));
}
如果可能,只需定义一次循环的限制:
int numberOfPlayers = numPlayers.nextInt()-1;
for (int i = 0; i < numberOfPlayers; i++){
System.out.println("what is player " + (i + 1) + " name?");
Scanner namePlayer = new Scanner(System.in);
String playerName = namePlayer.nextLine();
playerList.add(new Player(playerName));
}
您需要确保循环的迭代次数与您想要的次数相同
public static void main(String[] args)
{
Scanner numPlayers = new Scanner(System.in);
ArrayList<Player> playerList = new ArrayList<>();
int input = numPlayers.nextInt();
for (int i = 0; i < input; i++){
System.out.println("what is player " + (i + 1) + " name?");
String playerName = numPlayers.next();
playerList.add(new Player(playerName));
}
}
您应该在for循环外部声明scanner对象。代码的问题是,每次输入字符串后,都需要代码为int i=0提供一个整数;ipublic static void main(String[] args)
{
Scanner numPlayers = new Scanner(System.in);
ArrayList<Player> playerList = new ArrayList<>();
int input = numPlayers.nextInt();
for (int i = 0; i < input; i++){
System.out.println("what is player " + (i + 1) + " name?");
String playerName = numPlayers.next();
playerList.add(new Player(playerName));
}
}