想在for循环中,每循环一次就返回一次得到的值,而不退出循环,有人知道如何能做到吗?如果用return的话会直接退出循环,该怎么做能使循环不退出并能返回值呢?

解决方案 »

  1.   

    你可以将你for循环中的东西封装成一个函数,然后再for循环中来调用该函数。
      

  2.   

    主要是因为另一个函数需要for循环每次循环出来的值,而我又不想把这个函数放在循环中去调用。要是把循环结果放到一个集合中,又会有其他问题。所以就成了无解的
      

  3.   

    定义一个第三方变量被for循环和另外一个函数共享.
      

  4.   


    线性代码 执行循环操作 怎么能不加循环呢?
    x(y) 变成 x([y1,y2,yn])只有 x1(y as [...]){for yy in y {x(yy)} }
      

  5.   

    在函数中声明数组,每循环一次,把你想要的结果push到数组中,循环结束后再一次返回这个数组就行了
      

  6.   

    在for中使用别的函数,直接在函数中把返回值在函数中抛出不就可以了么~
      

  7.   


    var a;
    for (i=0;i<count;i++)
    {
    ...
      doWhat();
    }function doWhat()
    {
    ...
    return a;
    }这样可以不?
      

  8.   

    思路转换一下,你的目的,A函数每次循环得到的一个值,B函数需要用到。而你又不想再A函数中调用B函数,那么就反过来,B函数,每次需要得到A函数循环的一个值,那就B函数要用的时候,调用一下A函数
      

  9.   


    可是这样做的话,还是没有把两个方法解耦啊,我就是因为不想让两个方法的耦合度太高才希望不要相互调用的我希望做的是使用C方法来控制整个过程,而A、B两个方法作为子方法来调用,其中A方法需要用到B方法中的循环每次抛出的值不知这样可以做到吗?