Cómo utilizar métodos que toman parámetros en java

UN parámetro es un valor que se puede pasar a un método en Java. A continuación, el método se puede utilizar el parámetro como si se tratara de una variable local inicializado con el valor de la variable se le ha pasado por el método de llamada.

La aplicación de adivinanzas-juego tiene un método denominado GetRandomNumber que devuelve un número aleatorio entre 1 y 10:

public int GetRandomNumber estática () {return (int) (Math.random () * 10) + 1-}

Este método es útil, pero sería aún más útil si se veía que el rango de números que desea que el número al azar caiga en Sería bueno para llamar al método como este para obtener un número aleatorio entre 1 y 10.:

int número = GetRandomNumber (1, 10) -

Entonces, si el programa tiene que tirar los dados, se podría llamar el mismo método:

número int = GetRandomNumber (1, 6) -

O, para recoger una carta al azar de una baraja de 52 cartas, se le puede llamar así:

int número = GetRandomNumber (1, 52) -

Usted no tiene que comenzar con 1, tampoco. Para obtener un número aleatorio entre 50 y 100, que se podría llamar el método de la siguiente manera:

int número = GetRandomNumber (50, 100) -

La declaración de parámetros

Un método que acepta parámetros tiene que anotar los parámetros en la declaración del método. Los parámetros se colocan en una lista de parámetros dentro de los paréntesis que siguen al nombre del método. Para cada parámetro utilizado por el método, usted enumera el tipo de parámetro seguido del nombre del parámetro. Si necesita más de un parámetro, se separan los parámetros con comas.

Video: 09 - Métodos Con Parámetros (JavaPOO)

Aquí hay una versión de la GetRandomNumber método que acepta parámetros:

public static int GetRandomNumber (int min, int max) {return (int) (Math.random () * (max - min + 1)) +} min-

Aquí, el método utiliza dos parámetros, tanto de tipo int, llamado min y máx. Entonces, dentro del cuerpo del método, estos parámetros se pueden utilizar como si fueran variables locales.

Los nombres que utiliza para los parámetros pueden ser los mismos que los nombres que utiliza para las variables que usted pasa al método cuando se llame, pero no tiene que ser. Se podría llamar la GetRandomNumber método como este:

int min = 1-int número max = 10-int = GetRandomNumber (min, max) -

O se le puede llamar así:

int baja = 1-int alta = número 10-int = GetRandomNumber (baja, alta) -

O se podría prescindir de las variables por completo y sólo pasar valores literales con el método:

int número = GetRandomNumber (1, 10) -

También puede especificar expresiones como los valores de los parámetros:

int min = 1-int max = 10-int número = GetRandomNumber (min * 10, max * 10) -

aquí número se le asigna un valor entre 10 y 100.

De alcance a los parámetros

El alcance de un parámetro es el método por el cual se declara el parámetro. Como resultado, un parámetro puede tener el mismo nombre que las variables locales utilizados en otros métodos sin causar ningún conflicto. Considere este programa:

ParameterScope clase pública {void main (String [] args) public static {int min = 1-int max = 10-int número = GetRandomNumber (min, max) -System.out.println (número) -} public static int GetRandomNumber ( int min, int max) {return (int) (Math.random () * (max - min + 1)) + min-}}

Aquí el principal Método declara variables con nombre min y máx, y el GetRandomNumber utiliza el método min y máx por sus nombres de parámetros. Esto no causa ningún conflicto, porque en cada caso el alcance se limita a un único método.

Video: Parámetros, Argumentos y retorno de un método. Tutorial 11 Programación Java

La comprensión pase por valor

Cuando Java pasa una variable a un método a través de un parámetro, el método en sí recibe una copia del valor de la variable, no la propia variable. Esta copia se llama pasar por valor, y tiene una consecuencia importante: Si un método cambia el valor que recibe como un parámetro, que el cambio es no reflejado en la variable original que se pasa al método. Este programa puede ayudar a aclarar esto:

ChangeParameters clase pública {public static void main (String [] args) {int número = 1-tryToChangeNumber (número) -System.out.println (número) -} public void tryToChangeNumber estática (int i) {i = 2-}}

Aquí una variable llamada número se establece en 1 y luego se pasa al método llamado tryToChangeNumber. Este método recibe la variable como un parámetro denominado yo y entonces establece el valor de yo a 2. Mientras tanto, en el principal método, println se utiliza para imprimir el valor de número después de la tryToChangeNumber devuelve el método.

Porque tryToChangeNumber sólo recibe una copia de número, no la número propia variable, este programa muestra el siguiente en la consola: 1.

El punto clave es la siguiente: A pesar de que la tryToChangeNumber método cambia el valor de su parámetro, que el cambio no tiene efecto en la variable original que se pasa al método.

Artículos Relacionados