fork download
  1. /* package whatever; // don't place package name! */
  2.  
  3. import java.util.*;
  4. import java.lang.*;
  5. import java.io.*;
  6.  
  7. /* Name of the class has to be "Main" only if the class is public. */
  8. class Ideone
  9. {
  10. public static void main (String[] args) throws java.lang.Exception
  11. {
  12. List<Map<Integer,Double>> list = new ArrayList<>();
  13. // Cast to raw List to disable type checking, so the example compiles.
  14. List<Map<? extends Number,? extends Number>> listX = (List) list;
  15.  
  16. Map<Double,Integer> map = new HashMap<>();
  17. map.put(0.0, 0);
  18.  
  19. listX.add(map);
  20.  
  21. for (Map<Integer, Double> e : list) {
  22. Integer i = e.keySet().iterator().next(); // ClassCastException!
  23. }
  24.  
  25. }
  26. }
Runtime error #stdin #stdout #stderr 0.04s 2184192KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
Exception in thread "main" java.lang.ClassCastException: java.lang.Double cannot be cast to java.lang.Integer
	at Ideone.main(Main.java:21)