Java 是否支持默认参数值?
大家好!我刚开始学习 Java,之前写过一些 Python 和 JavaScript。在那里我习惯给函数参数设置默认值,例如:
```python
def greet(name="Гость"):
print("Привет, " + name)
```
并且可以带或不带参数调用函数。在 Java 中我尝试做类似的事情,但编译器报语法错误。这是我的代码:
```java
public class Hello {
public static void greet(String name = "Гость") {
System.out.println("Привет, " + name);
}
public static void main(String[] args) {
greet(); // 想不带参数调用
greet("Анна");
}
}
```
IntelliJ IDEA 将 = "Гость" 标红并显示 "unexpected type"。我谷歌了一下,但找到了各种不同的意见——有人说这不被支持,有人建议使用 Builder 或 Optional。请告诉我如何在 Java 中正确解决这个问题?也许有某种标准模式可以模拟默认参数?