У меня есть следующий код
private Map<KEY, Object> values = new HashMap<KEY, Object>();
public void set(KEY key, Object value) {
values.put(key, value);
}
private Object getObj(KEY key) {
return values.get(key) == null ? key.getDefaultValue() : values.get(key);
}
public List<E> getList(KEY key) {
return (List<E>) getObj(key);
}
Идея иметь возможность отправлять любые объекты на карте и затем извлекать ее, но как мне решить составную часть в java?
Вот пример кода. Здесь я сохраняю Список на карту:
List<String> list = new ArrayList<String>();
list.add("a string");
session.set(KEY.LIST, list);
Теперь я хочу снова получить список:
List<String> list = session.getList(KEY.LIST);
Но теперь я получаю
cannot convert from List<E> to List<String>
ошибка по понятным причинам.
Можно ли получить метод List (String) без каких-либо типов? Является ли этот метод правильным?
public List<E> getList(KEY key) {
return (List<E>) getObj(key);
}