Я хотел бы найти способ принять подпрограмму конкретного объекта ниже и аббревиатуру ее в метод, который вы можете передать классу, списку и имени поля, чтобы получить обратно Карта. Если бы я мог получить общий указатель на используемый шаблон или, и т. Д., Который мог бы начать меня в правильном направлении.Java: как преобразовать список <?> на карту <String,?>
Map<String,Role> mapped_roles = new HashMap<String,Role>();
List<Role> p_roles = (List<Role>) c.list();
for (Role el : p_roles) {
mapped_roles.put(el.getName(), el);
}
к этому вопросу? (Псевдокод)
Map<String,?> MapMe(Class clz, Collection list, String methodName)
Map<String,?> map = new HashMap<String,?>();
for (clz el : list) {
map.put(el.methodName(), el);
}
Возможно ли это?
@Aircule: Здесь можно использовать старый шутер-функтор. –
Я не понимаю. Вы хотите иметь список вещей 'x' и преобразовать его в карту, где ключ - это имя объекта, а значение - вещь? – OscarRyz
right, ключ - это строковое значение, возвращаемое переданным методом (объект Person имеет имя метода(), имя человека становится ключом), значение - это сам объект. Его гораздо проще сравнивать строки, чем иметь объект для сравнения. – ebt