Объясните, пожалуйста, логику работы:
1. пока с клавиатуры поступают строки (BufferedReader) данные записываются в Списки.
2. С клавиатуры поступает пустая строка, цикл while разрывается
3. Следующий ввод должен быть "Какой-то Город"
А у меня в данной задаче для моего кода вывод такой:
Москва
null
Киев
null
Лондон
null
1
Ведь во Входных данных, только одна пустая строка перед вводом города для поиска и она потрачена на разрыв цикла. Откуда null?package com.javarush.task.task08.task0829;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
/*
Модернизация ПО
*/
public class Solution {
public static void main(String[] args) throws IOException, NullPointerException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
List<String> city = new ArrayList<>();
List<String> sec_name = new ArrayList<>();
while (true) {
String city_name = reader.readLine();
String family = reader.readLine();
if (city_name.isEmpty()) {
break;
}
city.add(city_name);
if (family.isEmpty()) {
break;
}
sec_name.add(family);
}
String temp = "1";
String citysearch = reader.readLine();
for(int i=0; i<city.size(); i++) {
System.out.println(city.get(i)); // цикл все города выводит на печать, в этом проблемы нет
System.out.println(citysearch);
// if(citysearch.equals(city.get(i)))
// System.out.println(citysearch);
// temp=citysearch;
}
System.out.println(temp);
}
}