Salve in allegato un esercizio di un corso.
SCRIVERE UN PROGRAMMA JAVA CHE PERMETTA DI GESTIRE UNA RUBRICA TELEFONICA. REALIZZARE LA CLASSE PEROSNA NOME E COGNOME EMAIL INDIRIZZO E NUMERO DI TELEFONO. Questo è facile già fatta.
Ecco la parte più difficile:
REALIZZARE LA CLASSE RUBRICA DOVE LA LISTA DEI CONTATTI è REALIZZATA MEDIANTE UNA HASHMAP IN CUI LE CHIAVI SONO I N UMERI DI TELEFONO E I VALORI SONO OGGETTI DI TIPO PERSONA. LA CLASSE RUBRICA DEVE ANCHE PREVEDERE I METODI:
- INSERIMENTO NUOVO CONTATTO
- CANCELLAZIONE CONTATTO
- RICERCA CONTATTO
- RICERCA DEL NUMERO DI TELEFONO PER UN CONTATTO DI CUI SI CONOSCE NOME E COGNOME.
- STAMPA DI TUTTI I CONTATTI IN ORDINE ALFABETICO.
IO HO FATTO COSI MA DA ERRORE
SCRIVERE UN PROGRAMMA JAVA CHE PERMETTA DI GESTIRE UNA RUBRICA TELEFONICA. REALIZZARE LA CLASSE PEROSNA NOME E COGNOME EMAIL INDIRIZZO E NUMERO DI TELEFONO. Questo è facile già fatta.
Ecco la parte più difficile:
REALIZZARE LA CLASSE RUBRICA DOVE LA LISTA DEI CONTATTI è REALIZZATA MEDIANTE UNA HASHMAP IN CUI LE CHIAVI SONO I N UMERI DI TELEFONO E I VALORI SONO OGGETTI DI TIPO PERSONA. LA CLASSE RUBRICA DEVE ANCHE PREVEDERE I METODI:
- INSERIMENTO NUOVO CONTATTO
- CANCELLAZIONE CONTATTO
- RICERCA CONTATTO
- RICERCA DEL NUMERO DI TELEFONO PER UN CONTATTO DI CUI SI CONOSCE NOME E COGNOME.
- STAMPA DI TUTTI I CONTATTI IN ORDINE ALFABETICO.
Messaggio unito automaticamente:
IO HO FATTO COSI MA DA ERRORE
Java:
public class Rubrica {
HashMap<String, Persona> contatti = new HashMap<String, Persona>();
public void inserisci(String numero_telefono, Persona persona) {
contatti.put(numero_telefono, persona);
}
public void rimuovi(String numero_telefono) {
contatti.remove(numero_telefono);
}
public Persona ricercaPersona(String numero_telefono) {
Persona persona = contatti.get(numero_telefono);
return persona;
}
public String ricercaTelefono(String nome, String cognome) {
for (Map.Entry<String, Persona> rubrica : contatti.entrySet()) {
if (rubrica.getValue().contains(cognome)) { // QUI MI DA ERRORE MANNAGGIA
Persona persona = ricercaPersona(rubrica.getKey());
if (persona.getNome().equalsIgnoreCase(nome)) {
return persona.getTelefono();
}
}
return "nome non presente in rubrica";
}
}
}