Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Práctica de Métodos | Métodos
Java Avanzado
course content

Contenido del Curso

Java Avanzado

Java Avanzado

1. Estructura Profunda de Java
2. Métodos
3. String Avanzado
4. Clases
5. Clases Avanzadas

book
Práctica de Métodos

Práctica

Los métodos pueden ser difíciles de comprender, por lo que este capítulo proporciona ejemplos de varios métodos en acción, mostrando cómo funcionan, dónde utilizarlos y cómo escribir y combinar múltiples métodos de manera efectiva.

Ejemplo 1

Comencemos con un método que toma un arreglo de tipo int y lo invierte, de modo que el último valor se convierte en el primero y el primero en el último:

Main.java

Main.java

copy
123456789101112131415161718192021222324252627282930
package com.example; public class Main { static int[] flipIntArray(int[] array) { int[] result = new int[array.length]; int index = 0; for (int i = array.length - 1; i >= 0; i--) { result[index] = array[i]; index++; } return result; } static void printIntArrayToTheConsole(int[] array) { for (int element : array) { System.out.print(element + " "); } System.out.println(); } public static void main(String[] args) { // do not modify the code below int[] firstArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int[] secondArray = {0, 2, 4, 6, 8, 10, 12, 14, 16}; printIntArrayToTheConsole(flipIntArray(firstArray)); printIntArrayToTheConsole(flipIntArray(secondArray)); } // do not modify the code above }
  • Primero, observe el método flipIntArray en la línea 4, que utiliza un bucle que cuenta desde el final del arreglo y almacena sus valores en un nuevo arreglo del mismo tamaño. También hay una variable index en la línea 6 que aumenta para almacenar los valores en el arreglo result;

  • A continuación, puede ver el método en la línea 14 del capítulo anterior, que utilizo para imprimir el arreglo en una sola línea de código;

  • Ahora, pasemos a algo interesante. Puede ver en las líneas 25-26 que estoy pasando un método como parámetro dentro de otro método. Esto se debe a que estoy utilizando un método que retorna int[] dentro de un método que recibe int[] como parámetro, ahorrando así la memoria asignada para crear variables. Podemos ver que nuestros métodos están funcionando y mostrando los valores correctos.

Ejemplo 2

Supongamos que necesitamos escribir un método que calcule el factorial, tomando una variable entera como entrada.

Main.java

Main.java

copy
12345678910111213141516171819202122232425262728293031
package com.example; // do not modify the code below this comment public class Main { // method to calculate the factorial of a number static int calculateFactorial(int input) { int result = 1; // loop to calculate factorial by multiplying each number from 1 to input for (int i = 1; i <= input; i++) { result = result * i; } // return the final result of the factorial calculation return result; } public static void main(String[] args) { // initializing the first number for factorial calculation int first = 5; // initializing the second number for factorial calculation int second = 7; // initializing the third number for factorial calculation int third = 4; // calculating and printing the factorial of the first number System.out.println("Factorial of the first number = " + calculateFactorial(first)); // calculating and printing the factorial of the second number System.out.println("Factorial of the second number = " + calculateFactorial(second)); // calculating and printing the factorial of the third number System.out.println("Factorial of the third number = " + calculateFactorial(third)); } }

En este ejemplo, se ha escrito un método que multiplica la variable acumuladora por los números desde 1 hasta el número dado para calcular el factorial. Es un enfoque sencillo, y se puede observar cómo se utiliza este método varias veces en el método main, lo que ahorra espacio y mejora la legibilidad del código. A continuación, se utiliza nuestro método dentro de System.out.println porque el método devuelve un valor de tipo int.

Ejemplo 3

Se escribirá un método que crea una abreviatura a partir de un arreglo de cadenas de texto.

Main.java

Main.java

copy
1234567891011121314151617181920212223242526272829
package com.example; // do not modify the code below this comment public class Main { // method to create abbreviation by taking first letter of each word static String makeAbbreviation(String[] input) { StringBuilder result = new StringBuilder(); // iterate through each word and append the first letter to result for (String word : input) { result.append(word.toUpperCase().charAt(0)); } // return the abbreviation as a string return result.toString(); } public static void main(String[] args) { // initializing arrays with words for abbreviation String[] firstArray = {"united", "nations"}; String[] secondArray = {"North", "Atlantic", "Treaty", "Organization"}; String[] thirdArray = {"Oh", "my", "God"}; // printing abbreviation for the first array System.out.println(makeAbbreviation(firstArray)); // printing abbreviation for the second array System.out.println(makeAbbreviation(secondArray)); // printing abbreviation for the third array System.out.println(makeAbbreviation(thirdArray)); } }

En este método, utilizamos la clase StringBuilder para llamar al método append() y agregar la primera letra en mayúscula a una cadena inicialmente vacía. De este modo, iteramos a través de cada elemento del arreglo, tomamos la letra en la posición cero (la primera letra de cada palabra), la convertimos a mayúscula usando el método toUpperCase() y la añadimos a nuestro resultado utilizando el método append(). Finalmente, usamos el método toString() para convertir nuestro StringBuilder en un String.

1. ¿Qué es un valor de retorno en un método?

2. ¿Qué devuelve un método void?

3. ¿Se puede utilizar un método dentro de otro método?

question mark

¿Qué es un valor de retorno en un método?

Select the correct answer

question mark

¿Qué devuelve un método void?

Select the correct answer

question mark

¿Se puede utilizar un método dentro de otro método?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 5

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

course content

Contenido del Curso

Java Avanzado

Java Avanzado

1. Estructura Profunda de Java
2. Métodos
3. String Avanzado
4. Clases
5. Clases Avanzadas

book
Práctica de Métodos

Práctica

Los métodos pueden ser difíciles de comprender, por lo que este capítulo proporciona ejemplos de varios métodos en acción, mostrando cómo funcionan, dónde utilizarlos y cómo escribir y combinar múltiples métodos de manera efectiva.

Ejemplo 1

Comencemos con un método que toma un arreglo de tipo int y lo invierte, de modo que el último valor se convierte en el primero y el primero en el último:

Main.java

Main.java

copy
123456789101112131415161718192021222324252627282930
package com.example; public class Main { static int[] flipIntArray(int[] array) { int[] result = new int[array.length]; int index = 0; for (int i = array.length - 1; i >= 0; i--) { result[index] = array[i]; index++; } return result; } static void printIntArrayToTheConsole(int[] array) { for (int element : array) { System.out.print(element + " "); } System.out.println(); } public static void main(String[] args) { // do not modify the code below int[] firstArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int[] secondArray = {0, 2, 4, 6, 8, 10, 12, 14, 16}; printIntArrayToTheConsole(flipIntArray(firstArray)); printIntArrayToTheConsole(flipIntArray(secondArray)); } // do not modify the code above }
  • Primero, observe el método flipIntArray en la línea 4, que utiliza un bucle que cuenta desde el final del arreglo y almacena sus valores en un nuevo arreglo del mismo tamaño. También hay una variable index en la línea 6 que aumenta para almacenar los valores en el arreglo result;

  • A continuación, puede ver el método en la línea 14 del capítulo anterior, que utilizo para imprimir el arreglo en una sola línea de código;

  • Ahora, pasemos a algo interesante. Puede ver en las líneas 25-26 que estoy pasando un método como parámetro dentro de otro método. Esto se debe a que estoy utilizando un método que retorna int[] dentro de un método que recibe int[] como parámetro, ahorrando así la memoria asignada para crear variables. Podemos ver que nuestros métodos están funcionando y mostrando los valores correctos.

Ejemplo 2

Supongamos que necesitamos escribir un método que calcule el factorial, tomando una variable entera como entrada.

Main.java

Main.java

copy
12345678910111213141516171819202122232425262728293031
package com.example; // do not modify the code below this comment public class Main { // method to calculate the factorial of a number static int calculateFactorial(int input) { int result = 1; // loop to calculate factorial by multiplying each number from 1 to input for (int i = 1; i <= input; i++) { result = result * i; } // return the final result of the factorial calculation return result; } public static void main(String[] args) { // initializing the first number for factorial calculation int first = 5; // initializing the second number for factorial calculation int second = 7; // initializing the third number for factorial calculation int third = 4; // calculating and printing the factorial of the first number System.out.println("Factorial of the first number = " + calculateFactorial(first)); // calculating and printing the factorial of the second number System.out.println("Factorial of the second number = " + calculateFactorial(second)); // calculating and printing the factorial of the third number System.out.println("Factorial of the third number = " + calculateFactorial(third)); } }

En este ejemplo, se ha escrito un método que multiplica la variable acumuladora por los números desde 1 hasta el número dado para calcular el factorial. Es un enfoque sencillo, y se puede observar cómo se utiliza este método varias veces en el método main, lo que ahorra espacio y mejora la legibilidad del código. A continuación, se utiliza nuestro método dentro de System.out.println porque el método devuelve un valor de tipo int.

Ejemplo 3

Se escribirá un método que crea una abreviatura a partir de un arreglo de cadenas de texto.

Main.java

Main.java

copy
1234567891011121314151617181920212223242526272829
package com.example; // do not modify the code below this comment public class Main { // method to create abbreviation by taking first letter of each word static String makeAbbreviation(String[] input) { StringBuilder result = new StringBuilder(); // iterate through each word and append the first letter to result for (String word : input) { result.append(word.toUpperCase().charAt(0)); } // return the abbreviation as a string return result.toString(); } public static void main(String[] args) { // initializing arrays with words for abbreviation String[] firstArray = {"united", "nations"}; String[] secondArray = {"North", "Atlantic", "Treaty", "Organization"}; String[] thirdArray = {"Oh", "my", "God"}; // printing abbreviation for the first array System.out.println(makeAbbreviation(firstArray)); // printing abbreviation for the second array System.out.println(makeAbbreviation(secondArray)); // printing abbreviation for the third array System.out.println(makeAbbreviation(thirdArray)); } }

En este método, utilizamos la clase StringBuilder para llamar al método append() y agregar la primera letra en mayúscula a una cadena inicialmente vacía. De este modo, iteramos a través de cada elemento del arreglo, tomamos la letra en la posición cero (la primera letra de cada palabra), la convertimos a mayúscula usando el método toUpperCase() y la añadimos a nuestro resultado utilizando el método append(). Finalmente, usamos el método toString() para convertir nuestro StringBuilder en un String.

1. ¿Qué es un valor de retorno en un método?

2. ¿Qué devuelve un método void?

3. ¿Se puede utilizar un método dentro de otro método?

question mark

¿Qué es un valor de retorno en un método?

Select the correct answer

question mark

¿Qué devuelve un método void?

Select the correct answer

question mark

¿Se puede utilizar un método dentro de otro método?

Select the correct answer

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 5
some-alt