Avatar ·

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 中正确解决这个问题?也许有某种标准模式可以模拟默认参数?