好的,所以我有一个用于“高级数据结构”的课程(在这种情况下为有点树),所以我将迭代剂作为私人类中的迭代器。因此,迭代器需要实现删除函数以删除最后一个retuired元素。

现在,我的ADT已经插入了删除功能,在这种情况下,通过向迭代器强加其他删除功能来获得很少的(我认为什么,我认为什么都没有)可以获得。

那么我该如何打电话给我的adt删除

我的弦的草图:

public class ADT {
...
   private class ADT_Iterator impliments  java.util.Itorator{
      ...
      public void remove(){
          //where I want to call the ADT's remove function from
      }
...

    public void remove( Object paramFoo )
    {
     ...
    }

    ...     

}

因此,仅调用删除(fooinstance)无法正常工作(会吗?),而这个。

我叫什么? (并更改ADT的删除功能的名称不是一个选择,因为AD T必须满足我在Liberty上注明的Interace,以更改)

我猜我可以让他们俩都称为Remove Heelper函数函数...

有帮助吗?

解决方案

ADT.this.remove(object)

(尽管在这种情况下仅调用删除(对象)将起作用(对象),因为它具有与迭代器中的remove()方法不同的签名。)

其他提示

要获取内部类“附加”的外部类的参考,请使用ClassName。

   private class ADT_Iterator impliments  java.util.Itorator{
      ...
      public void remove(){
          ADT.this.remove(obj)
      }
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top