public class QueueAR implements Queue
{ private Object[] v;
private int testa;
private int coda;
private int taglia;
private static final int MAX = 10;
public QueueAR () { this(MAX); }
public QueueAR (int max) { v = new Object[max]; }
public void enqueue (Object x) <--------
{ if (taglia == v.length)
throw new QueueArrayOverflowException("Accoda in coda piena");
v[coda++] = x;
if (coda == v.length)
coda = 0;
taglia++;
}
public Object dequeue () throws QueueEmptyException <----
{ if (taglia == 0)
throw new QueueEmptyException("Togli da coda vuota");
Object tmp = v[testa];
testa = (++testa)%v.length;
taglia--;
return tmp;
}
I due metodi enqueue() e dequeue() possono lanciare entrambi un eccezione...però enqueue lo fa nel corpo mentre dequeue lo dichiara anche prima....perchè?che differenza c'è??aspetto un aiuto =),grazie anticipate!