2021-02-03

showThisAnorther(1);

void showThisAnorther(int index)
{
for (int i = 0; i < 5; i++)
{
num++;
int k = i;
lock (this)
{
Debug.Log(“start>>>>>” + i + “>>>>” + k+">>>>>"+index);
Thread.Sleep(1000);
Debug.Log(“end>>>>>” + i + “>>>>” + k + “>>>>>” + index);
}

        if (num < 5)
        {
            showThisAnorther(index);//递归 一直卡着 所以i是0 
        }
        else
        {
            break;
        }
    }
}

以上代码输出结果为下图 总共输出9次
在这里插入图片描述
调用了一次showThisAnorther 方法 那么for循环是5次那么会执行5次
下面又递归调用了一次showThisAnorther 方法 注意num得变量 第一次调用时候showThisAnorther num从0开始递增到4 这里调用了5次 下面递归一次 num是从1开始得 那么num递增到5又执行了4次 num=5时 for循环 break 跳出

注意 :递归时 会一直卡在那一帧 知道有结果 ,在上面代码中 因为num<5 所以一直递归调用自身,那么i一直等于零
当num 等于0得时候输出 1次
当num等于1得时候 输出一次 递归又输出一次 所以两次
当num等于2得时候输出一次 递归又输出一次 所以两次
当num等于3得时候输出一次 递归又输出一次 所以两次
当num等于4得时候输出一次 递归又输出一次 所以两次 总共9次

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值