Почему в переменную s , не попадает " Лондон " :(
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;
import java.util.HashMap;
import java.util.Map;
/*
Модернизация ПО
Задача: Программа определяет, какая семья (фамилию) живёт в
доме с указанным номером.
Новая задача: Программа должна работать не с номерами домов,
а с городами:
Пример ввода:
Москва
Ивановы
Киев
Петровы
Лондон
Абрамовичи
Лондон
Пример вывода:
Абрамовичи
*/
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
Map<String, String> map = new HashMap<>();
while (true) {
String city = reader.readLine();
String family = reader.readLine();
if (city.isEmpty() || family.isEmpty()) {
break;
}
map.put(city,family);
}
// Проверка заполнения карты ключами
for (Map.Entry<String, String> pair: map.entrySet()) {
String key = pair.getKey();
String value = pair.getValue();
System.out.println(key);
}
//
String s = reader.readLine();
System.out.println(s); // Проверка , попал ли Лондон сюда
if (map.containsKey(s)==true) {
System.out.println("yes");
}
}
}
/*
старая версия
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
List<String> list = new ArrayList<>();
while (true) {
String family = reader.readLine();
if (family.isEmpty()) {
break;
}
list.add(family);
}
// Read the house number
int houseNumber = Integer.parseInt(reader.readLine());
if (0 <= houseNumber && houseNumber < list.size()) {
String familyName = list.get(houseNumber);
System.out.println(familyName);
}
}
}
*/
