is not compiling because the method is waiting for two arguments of the same type. You give him an int and a Double. Note that integer litteral are considered like int. Thus 123 will be boxed as an Integer.
but I think the reason the original line is not compiling are not the parameters (123 is boxed as Integer) but the result, which is of class Number (common superclass of Integer and Double) and cannot be converted to double