-
Title:
12-10 Agregar o eliminar parámetros
-
Description:
12-10 Agregar o eliminar parámetros
-
Te guiaré a través
de un ejemplo de un método
-
con una cantidad diferente
de parámetros de entrada.
-
Empecé creando una nueva aplicación
-
con el asistente de proyectos
de Android Studio,
-
así que no está relacionado
con la aplicación Just Java.
-
Añadí este método
en la MainActivity.
-
Se llama createWeatherMessage.
-
No hay parámetros de entrada,
y el valor de retorno es un string.
-
La intención de este método es crear
un nuevo mensaje que especifique
-
el nombre de la ciudad y la temperatura.
-
Se puede pensar en un método
como una plantilla de instrucciones.
-
Entonces puedo hacer que la temperatura
sea un parámetro de entrada.
-
Y es un número, así que pondré
int temperature.
-
Y entonces puedo usar esto aquí.
-
Así, esto es un literal string,
-
y se concatena con el número entero
de la temperatura.
-
Y luego se concatena con otro string
que dice grados Fahrenheit.
-
Ahora el mensaje se puede personalizar
en base a la temperatura
-
ya que es un parámetro de entrada.
-
Olvidé mencionar esto antes,
-
pero en el método onCreate
de la MainActivity,
-
que se llama cuando se crea la actividad,
-
puedo llamar al createWeatherMessage.
-
Antes no pasé ningún argumento,
pero ahora requiere un parámetro.
-
Así que pasaré 77 para la temperatura.
-
Esto hace que el error desaparezca,
y esta llamada al método es correcta.
-
La otra cosa que debo modificar
es este comentario sobre el método.
-
Agregaré una línea en blanco,
-
y luego describiré el parámetro de entrada
que es la temperatura aquí.
-
Escribiré @param temperature, y luego
agregaré una descripción que diga
-
que esta es la temperatura de la ciudad.
-
A veces los nombres de parámetros
son un poco difícil de entender,
-
por eso la descripción es útil.
-
Otras veces si tu método es público
-
otras personas podrán llamar
a este método,
-
y puede ser que no conozcan
las instrucciones dentro de este método.
-
Entonces leer este java doc
-
y la descripción de los parámetros
es realmente útil para ellos.
-
Mencioné antes que un método
es como una plantilla.
-
Entonces, ¿qué pasa
si queremos cambiar la ciudad
-
para que no sea siempre San Francisco?
-
Puedo hacer que la ciudad
sea un parámetro de entrada.
-
Entonces puedo simplemente
añadir una coma aquí,
-
y como el nombre de la ciudad es un texto
haré que el tipo de dato sea string.
-
Entonces puedo eliminar "San Francisco"
y reemplazarlo con una variable cityName.
-
Recuerda agregar un espacio
antes y después de aquí también.
-
Genial, ahora este método
puede crear un mensaje personalizable
-
para determinada ciudad y temperatura.
-
También recordé modificar el java doc
-
para agregar este parámetro
y la descripción
-
para "cityname".
-
Como cambié la firma del método,
ahora tengo un error aquí.
-
El método ya no funciona
con un solo argumento.
-
Tengo que pasar dos argumentos.
-
Así que añado una coma y luego paso
el string San Francisco.
-
Ahora el error desaparece.
-
Así que cuando llamo a
createWeatherMessage,
-
el valor de temperature será 77,
-
y San Francisco será el valor de cityName
-
Y creará el string adecuado aquí
-
Ahora volvemos al método calculatePrice,
-
y modificaremos la firma del método
-
para que tenga un diferente
número de parámetros de entrada
-
Lo definiremos con cero
parámetros de entrada,
-
un parámetro de entrada,
-
y por último,
con dos parámetros de entrada.
-
Verás cómo cambiar la firma del método
-
para tener un diferente número
de parámetros de entrada
-
afectará la forma
en que se llama al método.
-
Normalmente al construir tu aplicación,
-
la defines de una manera
-
con cierto número
de parámetros de entrada.
-
Por lo general, ese número
de parámetros de entrada será determinado
-
con base en lo que sucede
dentro del método.
-
La mejor práctica es pasar
solo parámetros de entrada
-
que en realidad se van a necesitar
dentro de este método.
-
No tiene sentido pasar más información
si no vas a usarla aquí dentro.
-
Aquí están las instrucciones
para esta tarea.
-
Primero define el método calculatePrice
en tu aplicación en la MainActivity.
-
Mira las notas del instructor
-
para obtener un fragmento de código
con que empezar.
-
Modificaremos el método calculatePrice
-
para que solo tenga
un parámetro de entrada.
-
Luego, en el método submitOrder
llama a calculatePrice
-
y pasa quantity como entrada.
-
Luego, intenta modificar
el método calculatePrice
-
para que tenga dos parámetros de entrada.
-
De esta forma en el método submitOrder
llamarás calculatePrice con quantity
-
y puedes pasar el precio
que podría ser de $10 por ejemplo.
-
Y, por último, cambia calculatePrice
para que no tenga parámetros de entrada.
-
De esta forma en el método submitOrder
-
simplemente llamarás a calculatePrice así.
-
Vamos a hacer la primera juntos
para que entiendas lo que quiero decir.
-
Abriré el enlace
de las notas del instructor.
-
En esta esencia proporcionamos código
para el método calculatePrice.
-
Así que sigue adelante,
selecciona todo y luego cópialo.
-
En Android Studio,
voy a pegar este método.
-
Voy a pegarlo justo debajo de submitOrder
-
y me aseguraré
de que haya una línea en blanco
-
entre cada método aquí.
-
Eso hace que sea más fácil de leer.
-
Luego puedo llamar a este método
desde el método submitOrder.
-
Voy a insertar la llamada
en la parte inferior del método.
-
Más tarde vamos a integrarlo
con el código aquí arriba.
-
Pero por ahora, esto es bueno.
-
Vaya, olvidé que tenemos
un parámetro de entrada,
-
así que necesito pasar una cantidad.
-
Ahora haz lo mismo
para las dos tareas restantes
-
modificando los parámetros
de entrada aquí.
-
Para completar esta tarea,
si necesitas ejemplos de referencia,
-
siempre puedes hacer
una búsqueda en Google de métodos Java.