A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Silvester 中级黑马   /  2014-5-5 00:09  /  1598 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 Silvester 于 2014-5-5 11:29 编辑

        在返回值类型为void的方法中,正因为返回值类型为空,一开始个人认为不能写return语句,但查阅后有这么个解释:”当出现不合法的输入时,就要求提前中断程序,因而后面的代码就没有必要执行,这个时候就需要使用return语句来终止当前方法!“
        所以,如果出现了条件判断是需要写return的,为了终止当前正在执行的函数或方法 ,可问题来了,如果只是终止正在执行的方法的话,经过条件判断后,如果不符合条件需要终止,完全可以用break,本来函数的返回值就为void,莫非这里的return=break?
        同时还有一句话:“JAVA中的函数返回值类型为void时,函数中的return语句如果在最后一句,就可以省略。”这么说的话每一个返回值类型为void方法最后一句都其实是省略了return?同样的,这和break又有什么区别?

评分

参与人数 1技术分 +1 收起 理由
Silent_memory + 1 赞一个!

查看全部评分

6 个回复

倒序浏览
(1)关于返回值是void的函数写了一个return语句,这其实是表示中止当前函数的运行,并将操作权返回给调用者,而不是说返回某个值。其实要求有返回值的函数会有一个return XXX的语句,而对于void不写也是可以的,写了也无所谓。
(2)关于第二个,break语句是跳出某个循环体系比如for循环和while循环,而return语句是直接跳出了整个函数体,这就是两者的区别吧。
回复 使用道具 举报
首先,有三个能完成跳出的关键字:continue,break,return。
对于continue:表示跳出循环,不再继续执行当前循环,直接进入下一次循环。只能跳出循环语句for,while,do-while。
对于break:表示跳出当前语句,可以跳出switch,for,while,do-while。
对于return:有两层含义,一是结束当前方法,二是返回该方法应该返回的值。
任意一个成员函数都会在末尾有一个return,如果返回值为void,可以不写。当return和其它语句搭配使用时,可以用在方法的任意位置,用于结束该方法。这时,方法的最后位置还会有一个return,若返回值为void,依然可以不写。

评分

参与人数 1技术分 +1 收起 理由
Silent_memory + 1 赞一个!

查看全部评分

回复 使用道具 举报
这个是个问题!我不会!
回复 使用道具 举报
谢振宣 发表于 2014-5-5 00:58
首先,有三个能完成跳出的关键字:continue,break,return。
对于continue:表示跳出循环,不再继续执行当 ...

谢谢啊,很清晰,明白了。
回复 使用道具 举报
宋美成 发表于 2014-5-5 00:52
(1)关于返回值是void的函数写了一个return语句,这其实是表示中止当前函数的运行,并将操作权返回给调用 ...

谢谢啊,自己学的时候忽略太多的细节了。
回复 使用道具 举报
谢振宣 发表于 2014-5-5 00:58
首先,有三个能完成跳出的关键字:continue,break,return。
对于continue:表示跳出循环,不再继续执行当 ...

学习了,看完之后有了个小小总结。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马