初级语法问题……

platinum 2004-11-08 09:25:34
以前是写 PHP 的,比方说写个函数

function aaa($b, $c)

如果 $c 有默认值 ddd,则是

function aaa($b, $c = "ddd")

同样的功能在 Java 里

public String aaa(b, c)

如果我要写成 aaa(b, c = "ddd") 是报错……正确的应该怎么写……
...全文
126 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
platinum 2004-11-08
  • 打赏
  • 举报
回复
.
platinum 2004-11-08
  • 打赏
  • 举报
回复
怎么重载……

<%!
public String a(String b, String c)
{
return b + c;
}

%><%
out.print(a("test", "ccc"));
%>

上面这个是完全正常的

我希望在 out.print(a("test")); 的时候也能显示和上面相同的结果,应该怎么改 public String a(String b, String c) ……
micalormicalor1 2004-11-08
  • 打赏
  • 举报
回复
你可以重载一下public String strDateFormat(String intDate,String pattern)
;public String strDateFormat(String intDate){return strDateFormat(intDate,"aaa");
}
platinum 2004-11-08
  • 打赏
  • 举报
回复
我就是这么写的,可是报错


public String strDateFormat(String inDate, String pattern = "aaa") // <- 没加“ = "aaa"”之前是正常的

加了以后报错如下:

org.apache.jasper.JasperException: Unable to compile class for JSP

An error occurred at line: 1 in the jsp file: /1.jsp
Generated servlet error:
D:\Tomcat 5.0\work\Catalina\localhost\blog\org\apache\jsp\index_jsp.java:17: ')' expected
public String strDateFormat(String inDate, String pattern = "aaa")


platinum 2004-11-08
  • 打赏
  • 举报
回复
啊,我随手写的,你要明白我的意思就好

public String aaa(String b, String c)

现在怎么给 c 一个默认参数,就是说当我用 aaa("bbb") 这样调用的时候 c 默认是一个什么字符串,而不用每次都要 aaa("bbb", "ccc") 这样用
liuyxit 2004-11-08
  • 打赏
  • 举报
回复
同意楼上,所以你的可以写成: aaa(String b,String c = "ddd")
sylmoon 2004-11-08
  • 打赏
  • 举报
回复
public String aaa(b, c)

编译器会检查函数原型,这里必须声明

public String aaa(double b, int c)
platinum 2004-11-08
  • 打赏
  • 举报
回复
..

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧