Я пишу случайную случайную игру, чтобы выбрать случайного победителя. Я использую цикл for для ввода игроков в массив, но он не позволяет мне вводить ничего для первого игрока. Вот код:Java For Loop Issue
import java.util.Scanner;
import java.util.Random;
public class Run {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
Random rand = new Random();
System.out.println("How many people will play???");
int playernum = input.nextInt();
String players[] = new String[playernum];
for(int i = 0; i < playernum; i++){
System.out.println("Who is player #" + (i+1)+"?");
players[i] = input.nextLine();
}
System.out.println("The winner is: " + players[rand.nextInt(playernum)]);
}
}
THINK! Вы создаете 'массив' строки на основе' playernum' как размер, а затем пытаетесь выполнить цикл, который увеличивается ... – Tdorno
Возможный дубликат [Проблема с сканером при использовании nextLine after nextXXX] (http://stackoverflow.com/ вопросы/7056749/scanner-issue-when-use-nextline-after-nextxxx) – acdcjunior