PDA

View Full Version : [Java] Ho Creato Un package: agendina.. ora come mi comporto nel main?


luxorl
16-04-2005, 11:10
Ciao a tutti,
stavo provando a costruirmi un'agendina basata su un HashMap..
Ho costruito la classe Nominativo (con alcuni metodi che ritenevo opportuni) che crea un oggetto con racchiuso dentro nome cognome telefono e indirizzo!

Poi sempre nello stesso package ho costruito una classe Agenda, che vi copio qui sotto:

Classe Agenda [File C:\esamepoo\agendina\Agenda.java]

package esamepoo.agendina;
import java.util.*;

public class Agenda{
private Map elenco=new HashMap();

public int size(){ return elenco.size(); }

public void aggiungi(Nominativo n){
String nome=n.getNome();
String cognome=n.getCognome();
Nominativo m=new Nominativo(nome, cognome);
elenco.put(m,n);
}

public void rimuovi(String nome, String cognome){
Nominativo n=new Nominativo(nome, cognome);
elenco.remove(n);
}

public String telefonoDi(String nome, String cognome){
Nominativo n=(Nominativo)elenco.get(new Nominativo(nome, cognome));
return n.getTelefono();
}

public Nominativo personaDi(String telefono){
Collection c=elenco.values();
Iterator it=c.iterator();
while(it.hasNext()){
Nominativo n=(Nominativo)it.next();
if(n.getTelefono().equals(telefono)) return n;
} return null;
}

public String toString(){
Map m=new TreeMap(elenco);
Iterator it=m.values().iterator();
String s="";
while(it.hasNext())
s+=it.next()+"\n"+"\n";
return s;
}
}


Adesso sono arrivato al momento del main per la gestione di questa agendina :)

Come devo procedere?

creo un file GestioneAgenda.java (anche in un'altra cartella) e poi importa il package esamepoo.agendina.*; ...

e poi dentro?

Devo crearmi un'oggetto di tipo Agenda? e richiamarci di sopra i metodi della classe Agenda? oppure devo creare un hashmap anche qui? mi aiutate per favore? :rolleyes:

^TiGeRShArK^
16-04-2005, 11:42
secondo me ti conviene creare nello stesso package l'applicazione principale (chessò tipo GestioneAgenda) e all'interno del main basta che istanzi un oggetto di tipo Agenda e usi i metodi appropriati.
L'import non è necessario perchè le due classi fanno parte dello stesso package in questo caso.
Cmq a sto punto io nel main farei pure una parte di gestione ke ti permette di eseguire dei comandi direttamente dalla finestra della console e richiamando i metodi opportuni.

P.S. è fikissimo il nuovo metodo di scorrimento del "code" :eek: