Hola rubens23!
Ciertamente, no podemos multiplicar un tipo primitivo (int, double, float, ext) por un tipo Objeto como lo es un String y pretender obtener un buen resultado. Para esto es menester realizar una convercion de tipos tal y como lo has hecho.
Tu codigo es aceptable pero se puede mejorar.
Podrias usar directamente la siguiente sintaxis: System.out.println ("El doble del número introducido es: " + 2 * new Integer(entradaUsuario));
y así evitas tener que declarar la variable Integer n que has creado.
El método valueOf es un método estático, por lo que puedes llamarlo directamente desde la clase Integer, sin la necesidad de crear un objeto (Integer n) de tipo Integer. La sintaxis podria ser la siguiente: System.out.println ("El doble del número introducido es: " + 2 * Integer.valueOf(entradaUsuario));
Otro método que podríamos usar y obtener igual buenos resultados, es el método
también estático parseInt(String s). La sintaxis podría ser la siguiente: System.out.println ("El doble del número introducido es: " + 2 * Integer.parseInt(entradaUsuario));
Simplificar nuestro código siempre ha de ser una opción a tomar en cuenta cuando escribimos código, un código claro y corto es preferido ante un código extenso y "confuso", aun cuando ambos códigos funcionen igual.
Saludos!!