可能重复:
Java支持默认参数值吗?
有可能做这样的吗
private void function(Integer[] a, String str = "")
就像在PHP中一样。如果我不提供str,它将是空的。在PHP中这是可能的,在JAVA中它会给我错误。或者这里唯一的解决方案是创建两个这样的方法?
private void function(Integer[] a, String str)
private void function(Integer[] a)
当然,除了,没有其他选项
private void function(Integer[] a, String str) {
// ...
}
private void function(Integer[] a) {
function(a, "");
}
用var agrs
声明您的方法
private void function(Integer[] a, String... s)
请记住,var args应该始终是该方法的最后一个参数。
是的,您必须使用第二种方法。
private void function(Integer[] a, String str)
private void function(Integer[] a)
这确实是实现这一目标的唯一方法,除了使用可变长度方法参数列表。
示例:
private void function(Integer[] a, String... str) {
for( String s : str )
{
System.out.println("String: " + s);
}
}
类似于这篇文章:
Java支持默认参数值吗?
Java无法处理此功能。