方法

l1103294466 2010-05-18 09:17:24
我老是弄不懂什么时候应该创建方法,而方法中什么时候用return,return之后又有什么后果(别人老说是返回,但是返回又是怎样一个情况,能形象一点说吗),请各位帮一下我这个小菜鸟都算不上的人吧,谢谢了!
...全文
116 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
cwjieNo1 2010-05-19
  • 打赏
  • 举报
回复
写出方法,方便以后的调用,如果你以后要调用的话,只需要类名.方法名就可以了,不写成方法的话,以后如果要调用又要重写·
wufengye12 2010-05-19
  • 打赏
  • 举报
回复
对 你以后调用的时候不是很方便啊
qq476676663 2010-05-18
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 invoked 的回复:]
打个譬如说,你女朋友给你10块钱叫你去买酱油,那这就是一个方法,你可以理解为功能的意思。

return,你女朋友和你说,买完酱油要给老娘找钱回来,你就可以在打酱油这个方法里返回钱,比如return money.这就是返回值。
[/Quote]
很不错的比喻很平民化的语言,易于理解,不过有void方法就不能有返回值return,二者不相容!
cwjieNo1 2010-05-18
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 keeya0416 的回复:]
有的方法不需要或得最后结果如打印
public static void printStr(String str){
System.out.println(str);
}
而有的方法你需要帮你算个东西啥的 如:
public static int getNum(int i, int j){
return i + j;
}
标示了有返回值的方法如果最后没给返回对应类型的值是编译……
[/Quote]
说的很好,有返回值的方法return是返回值,没有返回的是结束方法运行·
renjianguokeivor 2010-05-18
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 mars_ma_ok 的回复:]
引用 1 楼 invoked 的回复:
打个譬如说,你女朋友给你10块钱叫你去买酱油,那这就是一个方法,你可以理解为功能的意思。

return,你女朋友和你说,买完酱油要给老娘找钱回来,你就可以在打酱油这个方法里返回钱,比如return money.这就是返回值。


很不错的比喻.呵呵..什么时候创建方法,在你觉得你要实现某个功能的时候,有时候一个功能可以分为很多的不同逻辑,然后你……
[/Quote]
xiaohuanjie 2010-05-18
  • 打赏
  • 举报
回复
codes23457789 2010-05-18
  • 打赏
  • 举报
回复
有void方法就不能有返回值return,二者不相容
l1103294466 2010-05-18
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 mars_ma_ok 的回复:]
引用 1 楼 invoked 的回复:
打个譬如说,你女朋友给你10块钱叫你去买酱油,那这就是一个方法,你可以理解为功能的意思。

return,你女朋友和你说,买完酱油要给老娘找钱回来,你就可以在打酱油这个方法里返回钱,比如return money.这就是返回值。


很不错的比喻.呵呵..什么时候创建方法,在你觉得你要实现某个功能的时候,有时候一个功能可以分为很多的不同逻辑,然后你……
[/Quote]


可是很多的书上的程序我感觉在main方法下写出来也是可以,没必要再创建一个方法啊。比如下面这个:
public class Sample(){
int var1=1;
static var2=2;
public int add(){
int var3=var1+var2;
return var3;}
public int delete(){
int var4=var1-var2;
return var4;}
public static void main(String args[]){
new Sample().add();}
}我把上两个方法的内容写到main下就很简洁啊,为什么不这样?
keeya0416 2010-05-18
  • 打赏
  • 举报
回复
有的方法不需要或得最后结果如打印
public static void printStr(String str){
System.out.println(str);
}
而有的方法你需要帮你算个东西啥的 如:
public static int getNum(int i, int j){
return i + j;
}
标示了有返回值的方法如果最后没给返回对应类型的值是编译不通过的

无返回值的方法内部可以通过 return 来终止方法
Mars_Ma_OK 2010-05-18
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 invoked 的回复:]
打个譬如说,你女朋友给你10块钱叫你去买酱油,那这就是一个方法,你可以理解为功能的意思。

return,你女朋友和你说,买完酱油要给老娘找钱回来,你就可以在打酱油这个方法里返回钱,比如return money.这就是返回值。
[/Quote]

很不错的比喻.呵呵..什么时候创建方法,在你觉得你要实现某个功能的时候,有时候一个功能可以分为很多的不同逻辑,然后你又可以把一个方法拆分为几个小的方法,封装起来,其实就是把代码重用..返回值的话,你就可以根据你的方法需要或者在其他地方需要得到一个什么值,就可以返回什么类型的..比如:很多时候查询所以的时候都返回的是一个Collection..etc.
l1103294466 2010-05-18
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 keeya0416 的回复:]
有的方法不需要或得最后结果如打印
public static void printStr(String str){
System.out.println(str);
}
而有的方法你需要帮你算个东西啥的 如:
public static int getNum(int i, int j){
return i + j;
}
标示了有返回值的方法如果最后没给返回对应类型的值是编译……
[/Quote]


如何方法是否标示了有返回值。特地请教,这个困惑我很厉害啊!!
totti_java 2010-05-18
  • 打赏
  • 举报
回复
不要被规则所限制 ,方法无非就是一段代码而已有可能只有一个语句甚至什么都没有。 返回就是你执行完这个方法后得到得东西
lu76689614 2010-05-18
  • 打赏
  • 举报
回复
这个东西需要积累

返回值return是看你这个方法与上一个方法的关联

或者说你是否需要一个结果集

总之多写写就理解了
invoked 2010-05-18
  • 打赏
  • 举报
回复
打个譬如说,你女朋友给你10块钱叫你去买酱油,那这就是一个方法,你可以理解为功能的意思。

return,你女朋友和你说,买完酱油要给老娘找钱回来,你就可以在打酱油这个方法里返回钱,比如return money.这就是返回值。
hardycheng 2010-05-18
  • 打赏
  • 举报
回复
呵呵 有意思哦

62,621

社区成员

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

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