¿Java admite valores de parámetros por defecto?
¡Hola a todos! Acabo de empezar a aprender Java, antes escribía un poco en Python y JavaScript. Allí estaba acostumbrado a que se pueden asignar valores por defecto a los parámetros de una función, por ejemplo:
```python
def greet(name="Invitado"):
print("Hola, " + name)
```
Y llamar a la función con o sin argumento. En Java intenté hacer algo similar, pero el compilador se queja de la sintaxis. Aquí está mi código:
```java
public class Hello {
public static void greet(String name = "Invitado") {
System.out.println("Hola, " + name);
}
public static void main(String[] args) {
greet(); // quiero llamar sin argumento
greet("Ana");
}
}
```
IntelliJ IDEA subraya = "Invitado" en rojo y dice "unexpected type". Busqué en Google, pero encontré un montón de opiniones diferentes: algunos dicen que no es compatible, otros recomiendan usar Builder u Optional. Por favor, díganme cómo resolver correctamente este problema en Java. ¿Quizás hay algún patrón estándar para simularlo?