У меня есть Book
и BookList
классы. BookList
что-то вроде этого:Как я могу сделать свой класс итерабельным, чтобы я мог использовать синтаксис foreach?
public class BookList
{
private final List<Book> bList = new ArrayList<Book>();
public int size() { return bList.size(); }
public boolean isEmpty() { ... }
public boolean contains(Book b) { ... }
public boolean add(Book b) { ... }
public boolean remove(Book b) { .. }
public void clear() { ... }
public Object get(int index) { ... }
}
В моем главном классе я хочу напечатать название книг с в течение каждого цикла:
for(Book b : bList)
{
b.print();
}
Затмение говорит:
Может только итерация над массивом или экземпляром java.lang.Iterable
Как c Я получаю эту работу?
Вы должны реализовать этот интерфейс. – SLaks
Попробуйте реализовать интерфейс 'Iterable'. – AntonH
Что вы классно добавляете к простому списку? Он даже удаляет тип-безопасность, поскольку он имеет метод 'add (Object)' вместо 'add (Book)'. –