Dividir

🧩 Dividir el código en métodos

Hasta ahora, todo lo escribimos dentro de main.

Eso funciona para programas pequeños… pero cuando el código crece, main se vuelve largo, repetitivo y difícil de leer.

📌 Solución: crear métodos (bloques pequeños) que hagan una sola tarea.

👋 Creamos un método saludarUsuario (void)

Este método recibe un nombre y lo imprime con un saludo.

public class Main {
    public static void main(String[] args) {
        saludarUsuario("Danna");
    }

    public static void saludarUsuario(String nombre) {
        System.out.println("Hola " + nombre);
    }
}

nombre es un parámetro (entrada del método). ✅ "Danna" es un argumento (valor real que le pasas al llamar el método).

🧠 ¿Qué significan public static void?

Cuando declaras un método, lo primero que aparece suele ser esto:

  • public → se puede llamar desde fuera de la clase (por ahora lo dejamos así)
  • static → lo podemos usar directamente desde main
  • void → no devuelve nada, solo ejecuta instrucciones

📌 Si el método devuelve algo, entonces ya no es void.

🧾 Dos parámetros: nombre y apellido

Si un método necesita más entradas, se separan con coma.

public class Main {
    public static void main(String[] args) {
        saludarUsuario("Danna", "Cruz");
    }

    public static void saludarUsuario(String primerNombre, String apellido) {
        System.out.println("Hola " + primerNombre + " " + apellido);
    }
}

✅ El orden importa:

  • "Danna"primerNombre
  • "Cruz"apellido

⛔ Error típico: método con 2 parámetros pero 1 argumento

Si el método exige dos entradas, debes pasar las dos.

saludarUsuario("Danna"); // ❌ ERROR: falta el apellido

Java te dice: “me prometiste 2 parámetros… pero me diste 1”.

✅ Ahora: que el método DEVUELVA el saludo (return)

En vez de imprimir dentro del método, podemos devolver el mensaje.

public class Main {
    public static void main(String[] args) {
        String mensaje = saludarUsuario("Danna", "Cruz");
        System.out.println(mensaje);
    }

    public static String saludarUsuario(String primerNombre, String apellido) {
        return "Hola " + primerNombre + " " + apellido;
    }
}

✅ Cambios clave:

  • voidString
  • System.out.println(...)return ...

🧼 Código limpio: ¿cuándo imprimir y cuándo retornar?

  • Imprimir dentro del método (void) → útil para cosas rápidas.
  • Retornar un valor (String) → más flexible y reutilizable.

Ejemplo: si retornas, luego puedes:

  • imprimirlo,
  • guardarlo,
  • enviarlo a otro método,
  • combinarlo con más texto.

🌟 Mini tip pro (opcional): String.format()

Concatenar muchas cadenas se vuelve feo. Una opción más limpia:

public static String saludarUsuario(String primerNombre, String apellido) {
    return String.format("Hola %s %s", primerNombre, apellido);
}