fork(2) 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. String s = get();
  12. System.out.println(s);
  13. }
  14.  
  15. static <T> T get() {
  16. return coalesce();
  17. }
  18.  
  19. //@SafeVarargs NOT SAFE!
  20. public static <T> T coalesce(T ... args) {
  21. for(T i : args) {
  22. if(i != null) {
  23. return i;
  24. }
  25. }
  26. T newInstance = null;
  27. try {
  28. final Class<? extends Object[]> arrayClass = args.getClass();
  29. final Class<?> componentType = arrayClass.getComponentType();
  30. newInstance = (T) componentType.newInstance();
  31. }catch(Exception e) {
  32. e.printStackTrace();
  33. }
  34. return newInstance;
  35. }
  36. }
Runtime error #stdin #stdout #stderr 0.09s 45716KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
Exception in thread "main" java.lang.ClassCastException: class java.lang.Object cannot be cast to class java.lang.String (java.lang.Object and java.lang.String are in module java.base of loader 'bootstrap')
	at Ideone.main(Main.java:11)