Java 为集合类创建自己的迭代器时遇到问题

Java 为集合类创建自己的迭代器时遇到问题,java,class,collections,iterator,Java,Class,Collections,Iterator,我得到一个错误“迭代器无法解析为类型”。我试图获取存储类并添加实现java的Collections类所需的代码。 我想我不允许导入迭代器,我想我需要自己制作迭代器 public class storage { private Object[] data = new Object[256]; // Don't allow access to anything not yet stored private int nextEmptySlot = 0; private

我得到一个错误“迭代器无法解析为类型”。我试图获取存储类并添加实现java的Collections类所需的代码。 我想我不允许导入迭代器,我想我需要自己制作迭代器

public class storage {
    private Object[] data = new Object[256];
    // Don't allow access to anything not yet stored
    private int nextEmptySlot = 0;
    private int i=0;
    public Object begin(){
        return data[0];
    }
    public Object end(){
        return data[nextEmptySlot];
    }

    //class Iterator() {
        // public Storage data;
    //}

    public Iterator iterator() {

        // returns a class that iterates over the data array
        return new Iterator() {
            public Object remove(){
                for(int j=i+1 ; j<=nextEmptySlot-1 ; j++) {
                    this.data[j-1] = this.data[j];
                }
                return (this.data.data[i]);
            }

            public int hasNext(){
                if(this.data.data[i+1] != null) return 1;
                else return 0;
            }

            public Object next(){
                i++;
                if (hasNext()==1){
                    return this.data.data[i];
                }
                else if (hasNext()==0){
                    throw UnsupportedOperationException();       
                }
                return this;
            }
        };
    }
}
公共类存储{
私有对象[]数据=新对象[256];
//不允许访问尚未存储的任何内容
私有int-nextenstlot=0;
私有整数i=0;
公共对象begin(){
返回数据[0];
}
公共对象结束(){
返回数据[NextEntrySlot];
}
//类迭代器(){
//公共存储数据;
//}
公共迭代器迭代器(){
//返回在数据数组上迭代的类
返回新的迭代器(){
公共对象删除(){

对于(int j=i+1;j您需要
导入java.util.Iterator;

此代码甚至没有错;请查看迭代器方法:

您的迭代器没有实现java.util.Iterator接口;使用相同的名称不能使其成为一个接口

看看你的方法:

public int hasNext()
java.util.Iterator
hasNext()
返回一个布尔值


这是完全错误的。

在一般实践中,类名称以大写字母开头…
Storage