试图弄清楚如何使用Double
和array
方法遍历next()
hasNext()
以查看下一个元素中是否存在值。
答案 0 :(得分:1)
您必须添加一个计数器来确定当前位置。在hasNext方法中,检查项目是否在范围内。
public class ArraySource {
private Double[] source;
private int position=0;
public ArraySource(Double[] a){
source = a;
}
public Double next(){
return source[position];
}
public boolean hasNext(){
if(position++>=source.length-1){
position=0;
return false;
}
else{
return true;
}
}
}
示例:
public static void main(String[] args) {
Double a[]= {2.3,43.4,3.4,4.5,53.0};
ArraySource as = new ArraySource(a);
while(as.hasNext()){
System.out.println(as.next());
}
}
答案 1 :(得分:0)
hasNext()方法用于进行布尔检查,是否可以移动到下一个实例。您将需要一个游标(一个计数器)。 next()方法实际上是移动光标并获取下一个值。我会用谷歌搜索迭代器和可迭代的工作方式,以便更好地理解。
public boolean hasNext(){ if(cursorposition < sizeofstructure){return true;}else{return false;}
public E next(){if(hasNext()){return structure[cursor];}else{throw new Exception();}
所以它的想法是确认下一个位置是对还是错,然后next()实际上会