Modifier classe qui utilise tableau en LinkedList
Bonjour,
Je ne trouve pas grand chose sur Internet concernant LinkedList. Pouvez vous me donner un exemple d'utilisation de LinkedList, pour notamment accéder au éléments de la liste, ajouter un élément dans celle-ci, en retirer etc..
Je dois modifier une classe Stock géré sous forme de tableau, pour la transformer en forme de liste avec LinkedList. Voici la classe en question a modifier:
Merci d'avance,
Citation:
public class StockTableau extends Stock {
protected Produit[] content;
/**
* Construit un stock dont la capacite est donne par s
* @param s la taille du stock
*/
public StockTableau(int s) {
if (s < 0)
s = 0;
content = new Produit[s];
}
/**
* ajoute un produit, et incremente le nombre d'elements
* @param p le produit ajoute
*/
public void add(Produit p) throws ProduitNull, StockFull {
if(p == null)
throw new ProduitNull();
if(isFull())
throw new StockFull();
content[size++] = p;
}
/**
* retire un produit, et decremente le nombre d'elements
* on voit ici que le choix du produit retire pourrait
* etre different...
*/
public Produit remove()throws StockEmpty{
if(isEmpty())
throw new StockEmpty();
Produit p = content[--size];
content[size] = null;
return p;
}
/**
* retire un produit, et decremente le nombre d'elements
* @param p le Produit a retirer
*/
public void remove(Produit p) throws ProduitNull, StockEmpty {
if(p==null)
throw new ProduitNull();
if(isEmpty())
throw new StockEmpty();
int i = 0;
while(i < size && !p.equals(content[i]))
i++;
if(i < size){// le produit existait bien
for(int j = i; j < size-1; j++)// decalage des elements
content[j] = content[j+1];
size--;
content[size] = null;
}
}
public boolean isFull() {
return size == content.length;
}
/**
* Contenu du stock
*/
public String toString() {
String result = "[";
if (!isEmpty()) {
result += content[0];
for(int i = 1; i < size; i++)
result += ";" + content[i];
}
return result + "]";
}
}