Je continue de recevoir une erreur indiquant qu'il existe des types incompatibles. J'ai copié cela directement dans un livre parce que nous sommes censés apporter des modifications au code pour améliorer le jeu de la guerre. J'ai tous les autres cours complets et compilés mais celui-ci me donne des ajustements. Voici le code:Incompatible Types Erreur dans Java
public class ArrayStack<E> implements Stack<E> {
private E[] data;
private int size;
public ArrayStack() {
data = (E[])(new Object[1]);
size = 0;
}
public boolean isEmpty() {
return size == 0;
}
public Object pop() {
if (isEmpty()) {
throw new EmptyStructureException();
}
size--;
return data[size];
}
public Object peek() {
if (isEmpty()) {
throw new EmptyStructureException();
}
return data[size - 1];
}
protected boolean isFull() {
return size == data.length;
}
public void push(Object target) {
if (isFull()) {
stretch();
}
data[size] = target;
size++;
}
protected void stretch() {
E[] newData = (E[])(new Object[data.length * 2]);
for (int i = 0; i < data.length; i++) {
newData[i] = data[i];
}
data = newData;
}
}
L'erreur se produit dans la méthode push() aux données [Taille] = cible; ligne.
EDIT ::: Je reçois maintenant cette erreur. "type Stack ne prend pas de paramètres public class ArrayStack implémente Stack"
La classe de pile est la suivante.
public interface Stack<E> {
public boolean isEmpty();
public E peek();
public E pop();
public void push(E target);
}
S'il vous plaît montrer votre 'l'interface Stack' (je suppose que vous n'êtes pas en utilisant' java.util.Stack' classe intégrée). – rgettman