Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 18.10.2016
Сообщений: 2
1

HashMap с массивом значений (Map<String,List<String>>)

18.10.2016, 20:06. Показов 891. Ответов 1
Метки нет (Все метки)

Здравствуйте!
Не могу понять, как решить следующую задачу:

У меня есть класс City, с полями: город, страна.
Java
1
2
3
4
5
6
7
8
9
10
11
Public class City{
        private String city;
        private String country;}
 + методы гет и сет для данных полей и конструктор.
 
Есть Set<City> cities = new HashSet();
cities.add(new City("Russia","Moscow"));
cities.add(new City("Russia","Novgorod"));
cities.add(new City("Ukraine","Kiev"));
cities.add(new City("Ukraine","Dnepr"));
cities.add(new City("Belarus","Minsk"));
и т.д.

Теперь мне надо записать эти данные в HashMap, ключ - страна, значение - город.
Map<String,ArrayList<String>> map = new HashMap();
Записать так, чтобы каждому ключу(стране) соответствовал список значений(городов).
Чтобы когда я введу страну, мне выдало на экран список городов.
Буду благодарен за помощь.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.10.2016, 20:06
Ответы с готовыми решениями:

Разделение строки на 2 подстроки с последующей записью последних в HashMap<String, String>
Дорбого времени суток. Застрял на такой глупости блок кода который читает построчно тхт файл и...

ArrayList<HashMap<String,String>> get() - перебирает все элементы
Есть метод getList() который возвращает значение типа ArrayList&lt;HashMap&lt;String,String&gt;&gt; Если я...

Как сериализовать/десериализовать Map<String, Set<String>>?
Есть коллекция типа Map&lt;String, Set&lt;String&gt;&gt; - нужно сериализовать и десериализовать ее. Set не...

Создать словарь (Map<String, String>) занести в него десять записей по принципу «фамилия» - «имя».
/* Удалить людей, имеющих одинаковые имена Создать словарь (Map&lt;String, String&gt;) занести в него...

1
3043 / 2540 / 782
Регистрация: 05.07.2013
Сообщений: 12,288
18.10.2016, 21:18 2
Java
1
2
3
4
cities.stream()
.collect(Collectors.groupingBy(City::getCity, 
            Collectors.mapping((City c) -> c.getCountry(), Collectors.toList())))
.forEach((k,v)->System.out.println(k+":"+v));
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.10.2016, 21:18

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Написать класс, с двумя методами - add(String s), String get() и массивом на 10 элементов
написать класс, с двумя методами - add(String s), String get() и массивом на 10 элементов. Метод...

Взаимодействие String [] и HashMap
Почему у этого кода получается пустой вывод? import java.util.*; import static...

Таск List<String>
Добрый день! надо решить такую задачку Я написала что-то вроде этого, но у меня не выводит мой...

Работа с классом String, StringBuilder и массивом
Доброго времени суток! Столкнулся со следующей задачей: &quot;Given a string and a non-empty word...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.