У меня есть ошибка:Невозможно преобразовать тип в Iterable реализации в Java
Type mismatch: cannot convert from element type Object to Card
со следующим кодом:
Deck Removal
....
for (Card c : Removal)
d.removeCard(c);
Это метод итератора в моем классе палубного:
@Override
public Iterator<Card> iterator()
{
return deck.iterator();
}
Основание для колоды - Vector<Card>
. Мой итератор возвращает тип Card
. Почему это говорит мне, что это Object
в цикле for?
Я могу сделать следующее, а затем ошибка исчезнет, но это довольно глупо, поскольку я уже должен возвращать Card
s вместо Objects
.
Deck Removal
....
for (Object c : Removal)
d.removeCard((Card)c);
Благодаря
Использует ли Deck 'Iterable' или' Iterable '? –
Eran
Спасибо, хорошо поймать, исправлено –
Отлично! В этом случае я напишу свой комментарий в качестве ответа. – Eran