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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 Doublekill 于 2014-3-7 18:58 编辑

一般void是无返回值,有时候也会出现return,他们矛盾吗?为啥,求帮忙讲解下!

3 个回复

倒序浏览
    这就看return是放在什么地方,在什么情况下用了。
比如,
1、在while循环、do-while循环、for循环中,用return的意思就是跳出循环;
2、在创建属性时,也是需要用到return来返回值;
3、在方法中,当调用者想访问方法中的变量时,就得通过return来返回值,此时方法中的void就得要改成与return返回的值的类型相同。
回复 使用道具 举报
返回值为void类型的方法体里面也可以有return 存在,只不过这个return不带返回值,它的作用并不是返回一个结果,而是表示方法执行到此就结束了,return以下的代码将不再执行。
比如:
class Program
    {
        static int sum = 0;
        static void Main(string[] args)
        {
            doSth(true);
        }

        static void doSth(bool b)
        {
            if (b == false)
            {
                //b为false,下面程序代码就不执行了,提前直接返回到主程序
                return;
            }
            else
            {
                //如果不是false就执行完所有,再返回到主程序
                sum++;
            }
        }
    }

评分

参与人数 1黑马币 +3 收起 理由
czwanglei + 3 继续加油。。

查看全部评分

回复 使用道具 举报
azve 发表于 2014-3-10 11:56
返回值为void类型的方法体里面也可以有return 存在,只不过这个return不带返回值,它的作用并不是返回一个 ...

:)thank U。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马