Как сделать Итератор, который может Итерировать много типов объектов - PullRequest
0 голосов
/ 01 апреля 2019

Я пытаюсь создать класс итераторов, который может перебирать множество объектов по моему выбору. В колледже я видел предложения по использованию типа Object (поскольку это суперкласс объекта), но я не уверен, как это сделать.

Я создал конструктор, который получает в качестве параметров Object [] и количество элементов. Однако, когда мне нужно вернуть этот объект, он не позволяет мне сказать, что это несовместимый тип.

public class IteratorClass implements Iterator {
   Object[] objIt;
   int elemCounter;
   int currNumber = 0;
   /**
   * Constructor of the Iterador
   */
    public IteratorClass(Object[] objIt, int elemCounter) {
        this.elemCounter = elemCounter;
        this.objIt = objIt;

    }
    public Object next() {
         return objIt[currNumber++];
    }

}

Я ожидал, что он вернет объект типа, который я поместил в конструктор, но он не позволяет мне.

1 Ответ

0 голосов
/ 01 апреля 2019

Причина, по которой это не сработало, заключалась в том, что интерфейс, который я реализую в этом классе, имеет метод next (), возвращающий объект типа, отличного от Object.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...