I beg to differ. Most languages support 'Type conversion API'.For a java only version i must dig a bit deeper. Because there is a multitude of libraries/classes.
The output of an operator in one library cannot be used as input for a function in other library etc...
char a = "1"; char b = "2"; printf(a+b); // will output "12" printf(atoint(a) + atoint(b)); // will output "3" printf(atoint(a+b)); // will output "12". Figuring out why not 3 is left as an exercise for the reader.