Esto que explicamos es lo que llamamos pasar valores por parámetros, es decir, establecer que debe recibir un método para funcionar.
El poder del método
El arma más poderosa con la que cuenta un método es que puede recibir valores, a esto es a lo que llamamos recibir parámetros, con dichos parámetros es que podemos hacer cálculos dinámicos dentro del método y por ende hacer posible que podamos reutilizar el método dentro de uno o más programas.
Veamos este ejemplo a continuación, queremos crear un método que imprima una cadena una cantidad de veces, para ello nuestro método va a recibir la cadena primero y luego un número entero de veces a imprimir el valor:
public class ejemploParametros { public static void main(String[] args) { imprimir("Hola", 5); } public static void imprimir( String mensaje, int veces){ for (int i = 0; i < veces; i++) System.out.println(mensaje); } }
Si nos fijamos nuestro método recibe dos parámetros con unos nombres y unos tipos de datos, habíamos dicho que el primero era la cadena y el segundo el número de veces, si observamos al momento de llamar al método lo hacemos en este orden, si lo hiciéramos de forma inversa obtendríamos un error al compilar, veamos como luce esto cuando lo ejecutamos:
Lo que sucede en el método permanece en el método
Otro aspecto que debemos mencionar es que las variables y los diferentes valores que un método utiliza para llegar a su objetivo solo son accesibles dentro del método y lo único que vamos a recibir es lo que el método devuelva o imprima, por lo que si tenemos un contador en un ciclo dentro del método este solamente lo podrá ver y el resto del programa no podrá influenciarlo.
Veamos un ejemplo de un método que hace un incremento de una variable:
public class Incremento { public static void main(String[] args) { int x = 1; System.out.println("Antes de llamar al metodo, x es " + x); incrementoVariable(x); System.out.println("Despues de llamar al metodo, x es " + x); } public static void incrementoVariable(int n){ n++; System.out.println("n dentro del metodo es " + n); } }
Acá lo que hacemos es que en el método incrementamos en 1 el valor que le pasemos, para nuestros efectos será 1, si vemos el método imprime el valor incrementado y en nuestro bloque main imprimimos nuestra variable x.
Para finalizar el tutorial veamos en la imagen la ejecución donde x debe permanecer intacta y a pesar que el método utiliza su valor y lo incrementa: