Всем привет. Подскажите как реализовать List map String Integer.?
public class Person {
private int id;
private String firstName;
public Person(int id, String firstName) {
this.id = id;
this.firstName = firstName;
}
public int getId() {
return id;
}
@Override
public String toString() {
return "Person{" +
"id=" + id +
", firstName='" + firstName + '\'' +
'}';
}
@Override
public boolean equals(Object o) {
if (this == o) return true;
if (!(o instanceof Person)) return false;
Person person = (Person) o;
return id == person.id && Objects.equals(firstName, person.firstName);
}
@Override
public int hashCode() {
return Objects.hash(id, firstName);
}
public String getFirstName() {
return firstName;
}
}
public class MapExample {
public static void main(String[] args) {
Person first = new Person(1, "A");
Person second = new Person(2, "B");
Person third = new Person(3, "C");
Map<Integer, Person> map = new HashMap<>();//инициализация hashMap
map.put(first.getId(), first);//положили в мапу
map.put(second.getId(), second);//положили в мапу
map.put(third.getId(), third);//положили в мапу
Ответы (1 шт):
Автор решения: gil9red
→ Ссылка
Пример заполнения список словарями и перебора списка словарей для нахождения определенного ключа
public static void main(String[] args) throws Exception {
List<Map<String, Integer>> items = new ArrayList<>();
items.add(new HashMap<String, Integer>() {{
put("abc", 123);
}});
items.add(new HashMap<String, Integer>() {{
put("hello", 999);
put("abc", 999);
}});
items.add(new HashMap<String, Integer>() {{
put("abc", 777);
}});
System.out.println(items);
// [{abc=123}, {abc=999, hello=999}, {abc=777}]
for (Map<String, Integer> map : items) {
if (map.containsKey("abc")) {
System.out.println(map.get("abc"));
}
}
Результат:
123
999
777