eppure 2015-03-08 13:50 采纳率: 0%
浏览 2511

有关迭代器iterator的java实现的问题

    public Iterator<Item> iterator(){
   return new ArrayIterator();
}
private class ArrayIterator implements Iterator<Item>{
    private int[] random;    
    private int current = 0;    //line: 47
    random = new int[N];
    for(int i = 0; i < N; i++)
        random[i] = head + i;
    StdRandom.shuffle(random);
    public boolean hasNext(){        //line:52
        return current != (N - 1);
    }
    public void remove(){ }
    public Item next(){
        return RQ[random[current++]];
    }
}

错误报告
File: C:\Users\CHN\algs4\RandomizedQueue.java [line: 47]
Error: Syntax error on token ";", { expected after this token
File: C:\Users\CHN\algs4\RandomizedQueue.java [line: 52]
Error: Syntax error, insert "VariableDeclarators" to complete LocalVariableDeclaration
File: C:\Users\CHN\algs4\RandomizedQueue.java [line: 52]
Error: Syntax error, insert ";" to complete LocalVariableDeclarationStatement
File: C:\Users\CHN\algs4\RandomizedQueue.java [line: 52]
Error: Syntax error on token "{", ; expected

总报告缺分号、花括号之类的
但像这样的又可以( 不是同一个类里的):
public Iterator iterator(){
return new ListIterator();
}
private class ListIterator implements Iterator{
private Node current = first;
public boolean hasNext(){
return current != null;
}
public void remove(){ }
public Item next(){
Item item = current.item;
current = current.next;
return item;
}
}

对java一知半解,求解答,谢谢。

  • 写回答

10条回答 默认 最新

  • threenewbee 2015-03-08 14:56
    关注

    你这个连括号分号都没有配对,估计是粘贴代码都没有粘贴全,属于很低级的一类错误,先排除了这样的错误再说。

    评论

报告相同问题?

悬赏问题

  • ¥15 Stata 面板数据模型选择
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 请问这个是什么意思?
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏
  • ¥15 模糊pid与pid仿真结果几乎一样
  • ¥15 java的GUI的运用