/** * Title: Studio di implementazioni dell'adt Lista
* Description: L'interfaccia Lista dichiara i metodi minimi che qualsiasi
* implementazione deve fornire.
* Si assume che la lista sia del tipo L=
* Copyright: Copyright (c) Roberto Posenato
* Company: Università degli Studi di Verona
* @author Roberto Posenato
* @version 1.0
*/
//package Lista;
public interface Lista {
/**
* eVuota() restituisce vero se la lista è vuota, falso altrimenti
*
* @return vero se la lista è vuota, falso altrimenti
* @author Roberto Posenato
* @version 1.0
*/
boolean eVuota();
/**
* lunghezza() restituisce il numero degli oggetti presenti nella lista
*/
int lunghezza();
/**
* elemento(int k) restituisce l'oggetto nella posizione k-ma se 0<=k<=n,
* altrimenti lancia un'eccezione IllegalArgumentException.
*
* @param indice elemento ricercato
* @return oggetto nella posizione k-ma se esiste (0<=k<=n)
* @exception IllegalArgumentException
* @author Roberto Posenato
* @version 1.0
*/
Object elemento(int k) throws IllegalArgumentException;
/**
* cancella(int) cancella l'oggetto alla posizione k-ma se 0<=k<=n,
* altrimenti lancia un'eccezione IllegalArgumentException.
*
* @param indice elemento ricercato
* @exception IllegalArgumentException
* @author Roberto Posenato
* @version 1.0
*/
void cancella(int k) throws IllegalArgumentException;
/**
* inserisci(k,u) inserisce nella posizione k-ma l'oggetto u se 0<=k<=n+1,
* altrimenti lancia un'eccezione IllegalArgumentException.
*
* @param posizione k nella lista dove inserire elemento u
* @exception IllegalArgumentException
* @author Roberto Posenato
* @version 1.0
*/
void inserisci(int k, Object u) throws IllegalArgumentException;
}