Ciao! nel progetto che devo realizzare devo creare un metodo di una classe che chiamo classe A, il quale metodo

deve avere questa signatura:

codice:
public int get(String var)
e deve fare ciò:

nella classe A esiste una struttura dati, una LinkedList per la precisione, composta di oggetti Element, un'altra

classe da me creata, che non sono altro che oggetti con 2 campi, variabile-valore.
Il parametro var del metodo get indica il nome della variabile, e il metodo controlla se tale variabile è presente

nella lista, restituendo il valore ad essa associata, altrimenti deve sollevare una IllegalArgumentException.

Il mio dubbio sta proprio qui: non riesco a capire come gestire questa eccezione, in quanto comunque vada, il

metodo, vista la signatura, deve avere un return per restituire qualcosa, però se la var non c'è devo fare una

eccezione e immagino vada rilanciata per farla gestire dalla classe che ha il riferimento all'oggetto della classe

A, in modo che non si pianti tutto ma che venga usata l'eccezione per segnalare all'utente che la var non è

presente.

Io avevo pensato ad una cosa di questo tipo:

codice:
public int get(String var)
    {
        int tmp = -1;// prendera' il valore da restituire
        try
        {
            for(int i=0; i<memElements.size(); i++)// scorro la lista
            {
                if(memElements.get(i).getVar() == var)// guardo se c'e' quella var
                {
                    tmp = memElements.get(i).getVal();// restituisco il valore intero
                }      
            }
        // se la variabile non e' presente si solleva un'eccezione
        }catch(IllegalArgumentException e)
        {
            throw e;
        }
        return tmp;
    }
Non credo che sia corretto però il modo con cui sollevo l'eccezione, ma non capisco come controllare per

sollevarla. Poi appunto c'è il problema del return, anche perché nella classe per esempio B che ha un oggetto A,

devo gestire un int di ritorno ma anche una eventuale exception.

Qualcuno mi sa dare qualche consiglio?
Grazie mille