Advertisement
Guest User

Untitled

a guest
Feb 10th, 2016
44
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.02 KB | None | 0 0
  1. // Returned from other method, and the run time type is Map<String, B>
  2. Map<String, ? extends A> map = ...
  3.  
  4. // Option 1: cannot pass.
  5. Iterator<Map.Entry<String, ? extends A>> iterator = map.entrySet().iterator();
  6.  
  7. // Option 2: cannot pass either.
  8. // Where B is a subclass extends from A
  9. Iterator<Map.Entry<String, B>> iterator = map.entrySet().iterator();
  10.  
  11. Map<String, ? extends A> map = new HashMap<>();
  12. for (Map.Entry<String, ? extends A> entry : map.entrySet()) {
  13. String key = entry.getKey();
  14. A value = entry.getValue();
  15. }
  16.  
  17. for (Map.Entry<String, ? extends A> entry : map.entrySet())
  18. {
  19. String key = entry.getKey();
  20. A value = entry.getValue();
  21. }
  22.  
  23. // ERROR
  24. Iterator<Map.Entry<String, ? extends A>> iterator = map.entrySet().iterator();
  25.  
  26. Iterator<? extends Map.Entry<String, ? extends A>> iterator = map.entrySet().iterator();
  27.  
  28. Iterator<Map.Entry<String, ? extends A>>
  29.  
  30. Iterator<? extends Map.Entry<String, ? extends A>>
  31.  
  32. Set<? extends Map.Entry<String, ? extends A>>
  33.  
  34. Set<Map.Entry<String, ? extends A>>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement