0

有没有办法让 for 循环停止并且只在调用 next 时打印下一个元素?似乎其他一切都运行顺利,此时我正在打字,因为除非我解释更多,否则它不会让我发布我的问题。我觉得我的问题很直接。

4

3 回答 3

1

如果你真的需要一个 next() 方法,你可以在你的 Fibonacci 中创建一个。创建一个全局变量

int index = 0;

那么你的 next() 将如下所示

public int next(){
  return fib[index++];
}

然后你可以使用 next() 函数来打印下一个元素。

于 2012-11-14T03:47:47.293 回答
0

我想你在追求类似的东西BlockingQueue

BlockQueue#take

检索并删除此队列的头部,如有必要,等待元素可用。

于 2012-11-14T03:46:10.610 回答
0

我的 next 最终代码如下所示:

 public int next()
    {
        for ( int i = 0; i< howMany; i++)
        { 
        if ( fib[i] == currentNum)
        index = i+1;
        }
        return fib[index++];
    }

这样,如果首先询问第 n 个数字,也可以使用 next 来打印数组中该位置的每个下一个元素。谢谢!

于 2012-11-14T04:12:08.080 回答