에 넣으려면 어떻게합니까? <String, Lists>
의지도가 있지만 항목에 다른 유형의 목록이 있습니다.지도 (String, List <MyObject>)를지도 <String, List <Object>>
따라서 첫 번째 항목은 put("cars", List<Cars>)
이고 두 번째 항목은 put("bikes", List<Bikes>)
일 수 있습니다.
나는 이것을 붙들기 위하여 Map<String, List<Object>> myVehicles
를 선언했다. 항목을 넣으려고 할 때 :
List<Bikes> bikes = ...
myVehicles.put("bikes", (List<Object>)bikes);
"목록에서 목록으로 변환 할 수 없습니다"라는 오류 메시지가 나타납니다. 내가 무엇을해야 하나? 감사.
Map<String, List<? extends Object>> myVehicles =
new HashMap<String, List<? extends Object>>();
Map<String, List<Object>>
List<Object>
이 필요로하는
List<Bikes>
를 추가 할 수 없기 때문에 일반적인 유형
불변이기 때문에, :로
당신이 제네릭을 시도 해 봤나? 제네릭을 MyList과 같이 사용하십시오. 매번 T는 Cars, Bikes 등을 대체 할 수 있습니다. 다만 문제는 List 인터페이스를 구현할 때 직접 구현해야한다는 것입니다. –