Ho scritto la mia classe Stack (per il codice pertinente, vedere di seguito). Nel metodo next()
sono obbligato a trasmettere current.item
a Item
, ma non so perché. Il tipo di current.item
dovrebbe già essere Item
e quindi il cast non dovrebbe essere necessario, ma se non lo scrivo, ottengo un errore.Il cast è forzato quando si utilizzano i generici in Java
public class Stack<Item> implements Iterable<Item> {
private class Node {
Item item;
Node next;
}
private Node first= null;
public Iterator<Item> iterator() { return new StackIterator(); }
private class StackIterator<Item> implements Iterator<Item> {
private Node current = first;
public Item next(){
Item item = (Item)current.item;
current = current.next;
return item;
}
}
}
di poter postare l'errore? – DeepInJava
@SanketPipariya: Tipo mancata corrispondenza: impossibile convertire dall'articolo all'elemento – Mina
@Override sul metodo successivo nello StackIterator dovrebbe risolvere il problema ur .. – SamDJava