Показаны ответы на комментарий. Показать все комментарии.
кстати, кто-бы объяснил..ю
ява 1.5
это не компилируется
Map xx = new LinkedHashMap();
for (Map.Entry entry : xx.entrySet()) {
System.out.println(entry.getKey());
}
а вот это нормально:
Map<String, String> xx = new LinkedHashMap<String, String>();
for (Map.Entry entry : xx.entrySet()) {
System.out.println(entry.getKey());
}
> это не компилируется > > Map xx = new LinkedHashMap(); > > for (Map.Entry entry : xx.entrySet()) { > System.out.println(entry.getKey()); > } > > > а вот это нормально: > > Map<String, String> xx = new LinkedHashMap<String, String>(); > > for (Map.Entry entry : xx.entrySet()) { > System.out.println(entry.getKey()); > }
Потому что в первом случае у тебя Map.entrySet() возвращает нетипизированный Set, тип элемента в котором - Object. Так что надо вот так:
> Потому что в первом случае у тебя Map.entrySet() возвращает
нетипизированный Set, тип элемента в котором - Object
получается, двойной generics Set<Map.Entry<K, V>> entrySet(); обламывается, если внутренние K,V не заявлены?