答案取决于该
next()方法的实现。例如,如果
list为an,
Iterator则每次调用都会
next()使迭代器前进,因此代码中的两次调用将给出不同的结果(假设它们没有引发异常)。如果
list是,也是如此
Scanner。每次调用
next()都会产生不同的输出。
另一方面,如果该
next()方法仅返回
list实例的某些属性并且不更改其状态,则对其的多次调用将提供相同的输出。
通常,称为的方法会
next()更改调用它们的对象的状态,但这只是编码约定。

答案取决于该
next()方法的实现。例如,如果
list为an,
Iterator则每次调用都会
next()使迭代器前进,因此代码中的两次调用将给出不同的结果(假设它们没有引发异常)。如果
list是,也是如此
Scanner。每次调用
next()都会产生不同的输出。
另一方面,如果该
next()方法仅返回
list实例的某些属性并且不更改其状态,则对其的多次调用将提供相同的输出。
通常,称为的方法会
next()更改调用它们的对象的状态,但这只是编码约定。