Café y Código

8. Funciones y Métodos (Divide y Vencerás)

¿Por qué dividir nuestro código?

En Java, estrictamente hablando, solo existen Métodos (porque de fondo, todo pertenece a una Clase). Romper un problema gigantesco (como un Main de 1000 líneas) en pequeños "sub-programitas" independientes no solo hace tu código profesional, sino inmensamente más reciclable y fácil de depurar.

Creación y Consumo de Funciones
JAVA
1 public class MathUtils {
2
3 // Método que ejecuta una acción pero no regresa una respuesta física (void)
4 static void mostrarMensaje() {
5 System.out.println("Cargando sistemas...");
6 }
7
8 // Método que RECIBE dos parámetros locales y DEPONE/RETORNA su cálculo (int)
9 static int sumar(int a, int b) {
10 return a + b;
11 }
12
13 public static void main(String[] args) {
14 // Llamada directa
15 mostrarMensaje();
16
17 // Atrapamos la respuesta en un int!
18 int miTotal = sumar(5, 10);
19 System.out.println("Res: " + miTotal);
20 }
21 }

Usamos la palabra static en los métodos para poder consumirlos directamente desde el static void main(), sin tener que construir manualmente un objeto a punta de memoria dinámica (lo cual veremos en el próximo nivel).

👨‍💻 Ejercicio Práctico 1

Misión: Detector de Paridad

Crea un método estático static boolean esPar(int num). Haz que retorne true si su módulo entre 2 es 0.

👁️ Ver solución propuesta
JAVA
1 class App {
2 static boolean esPar(int num) {
3 return (num % 2 == 0);
4 }
5
6 public static void main(String[] args) {
7 System.out.println("¿Es 8 par?: " + esPar(8));
8 }
9 }

👨‍💻 Ejercicio Práctico 2

Misión: Un método vacío

Escribe un método void estático que se llame notificarError(). Solo debe tener un System.out con el texto "Alarma." adentro. Llámalo desde el main.

👁️ Ver solución propuesta
JAVA
1 static void notificarError() {
2 System.out.println("Alarma.");
3 }
4
5 public static void main(String[] args) {
6 notificarError();
7 }

👨‍💻 Ejercicio Práctico 3

Misión: Cálculo de Área Mágico

Escribe static double calcularArea(double base, double altura) que nos retorne la multiplicación interna de ambos. Pruébala en el Main devolviendo 5.0 * 10.

👁️ Ver solución propuesta
JAVA
1 static double calcularArea(double b, double h) {
2 return b * h;
3 }
4
5 public static void main(String[] args) {
6 System.out.println("Área es: " + calcularArea(5.0, 10.0));
7 }

👨‍💻 Ejercicio Práctico 4

Misión: Una función multi-parámetro

Aplica un método no-void que reciba un String de nombre, una edad entera y retorne un String concatenado con el reporte: "Usuario " + nombre + " guardado con edad de " + edad.

👁️ Ver solución propuesta
JAVA
1 static String guardarDatos(String nombre, int edad) {
2 return "Usuario " + nombre + " guardado con edad de " + edad;
3 }
4
5 public static void main(String[] args) {
6 String log = guardarDatos("Alex", 33);
7 System.out.println(log);
8 }

Ponte a prueba

Entendiendo el paso por valor, los retornos y el misterioso `void`.

Dato curioso: JDK 1.0 en 1996; James Gosling y Sun Microsystems. Wikipedia

Ko-fi
Donaciones
Apoyá cafeycodigo con un café en Ko-fi. Colaboradores: insignia, muro y zona exclusiva.