Как я могу ввести строку с более чем двумя словами в одном входе? - PullRequest
1 голос
/ 26 апреля 2020

я хочу ввести строку типа америки южная корея япония

и хочу сохранить ее в массиве. Я могу сделать это для стран, имеющих одно слово, но для текста, содержащего более одного слова, например, как я могу добавить Южную Корею. NextLine () не работает, я сделал это.

String c=new String[2];
for(int i=0;i<3;i++)
{
c=sc.next();  //taking one word
//tried sc.nextLine() also;
}

1 Ответ

1 голос
/ 26 апреля 2020

Попробуйте:

String c= null;

c=sc.nextLine();
String[] split = c.split(" ");
for(String x : split)
System.out.println(x);

Вывод:

america south korea japan
america
south
korea
japan

Вы присваиваете строковый массив строковой переменной.

String c = new String [ 2]; неверная инициализация

String [] c = new String [2]; правильная инициализация

Если вы хотите попробовать с массивом Попробуйте этот код:

Scanner sc = new Scanner(System.in);
String[] c= new String[3];
for(int i=0;i<3;i++) {
     c[i]=sc.nextLine();
}
for(String x : c)
    System.out.println(x);
}

Вывод:

america
South Korea
Japan
america
South Korea
Japan
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...