내가 잘못 가서 그 누구도 날이 설명 할 수있는 작업은 다음 코드는 해시 맵에 대한 형식 인수를 추론 할 수 없습니다 <>
class Test {
public static void main(String[] args) {
Map<Integer, String> map = new HashMap<>();
map.put(1, "x");
map.put(2, "y");
map.put(3, "x");
map.put(4, "z");
//the following line has error
Map<String, ArrayList<Integer>> reverseMap = new java.util.HashMap<>(map.entrySet().stream()
.collect(Collectors.groupingBy(Map.Entry::getValue)).values().stream()
.collect(Collectors.toMap(item -> item.get(0).getValue(),
item -> new ArrayList<>(item.stream().map(Map.Entry::getKey).collect(Collectors.toList()))));
System.out.println(reverseMap);
}
}
에 대한
Cannot infer type arguments for java.util.HashMap<>
는 무엇입니까? 적절한 가져 오기를 확인하고 java.util.hashmap을 가져 오는 중임을 알았습니다. 아직도 성가신 실수로 저를 괴롭 히고 있습니다.
실제로하게 IntelliJ IDEA는 오류없이 원래의 코드를 컴파일 : 일을 할 수있는 간단한 방법이 같은
그리고 BTW 보인다. –
@SteffenHarbich 왜냐하면 AFAIK는'javac'를 사용하기 때문에 ... – Eugene
나는 [ecj에 대한 버그] (https://bugs.eclipse.org/bugs/show_bug.cgi?id=527742)를 제출했습니다. 수정. –