Hola, en el api java tenemos:
get: get(int index) Returns the element at the specified position in this list. En este ejemplo, si el ArrayList es de Integer, nos devolverá un Integer. Como dice toni_apr, aquí nos devuelve un Integer, pero podría ser un objeto Persona, Rueda u otro tipo según el caso.
remove: remove (int index) Removes the element at the specified position in this list. Este método no devuelve nada, únicamente elimina el elemento en la posición especificada.
Coincido con toni, en miListadoAL.get(tmpAL.get(i) ) el compilador está haciendo una conversión automática de tipos
Y en miListadoAL.remove( tmpAL.get(i) ); no la hace, requiere que se le indique explícitamente miListadoAL.remove( (int) tmpAL.get(i) );
¿Por qué? Se trata de detalles de bajo nivel del compilador, algo que los desarrolladores del compilador han decidido que sea así (o que han dejado así sin intención explícita y que quizás cambien en futuras versiones del lenguaje).
Y a modo de resumen, ¿cómo saber qué hacer en cada caso? Lo más correcto pienso que sería pasarle siempre a un método el tipo que requiere el método, en este caso si los métodos requieren int, lo indicaríamos explícitamente:
for (int i=0; i < tmpAL.size(); i++) {
System.out.println ("Eliminamos ítem "+ (tmpAL.get(i)+1) +": " + miListadoAL.get((int)tmpAL.get(i) ) );
miListadoAL.remove( (int) tmpAL.get(i) ); //Introducida conversión de tipos
}
Aquí está indicado explícitamente que se pasa un int a aquellos métodos que requieren int, con lo cual no estamos a expensas de si el compilador realizará o no la conversión automática. En general nos confiamos pensando que la conversión automática lo hará todo correctamente pero podemos encontrarnos con casos en que no es así.
Adicionalmente: los métodos remove son especialmente problemáticos, porque a diferencia de los métodos get que sólo consultan lo que existe en el objeto, los métodos remove modifican el objeto. Quizás eso pueda darnos pie a pensar que los creadores del compilador decidieran no hacer conversiones automáticas en métodos especialmente delicados. Habría que preguntárselo a ellos...
Saludos.