EjercicioAgenda Solucion
EjercicioAgenda Solucion
EjercicioAgenda Solucion
22 de diciembre de 2013
1. Haz una clase llamada Agenda para manejar una agenda de teléfonos. Los objetos instanciados
a partir de esa clase tendrán la siguiente funcionalidad:
Construir una agenda a partir de un número máximo de contactos posibles (constructor)
Añadir un contacto nuevo
Listar todos los contactos de la agenda
Buscar un contacto por nombre
Buscar un contacto a partir de un número de teléfono
Borrar un teléfono dado un nombre
Modificar un número de telefono dado un nombre
Puedes añadir más métodos si lo consideras adecuado.
Las entradas de la agenda se modelarán mediante objetos de la clase Contacto que habrá que
crear. Para cada Contacto de la agenda se almacenará la siguiente información:
Nombre
Dirección
Código Postal
Teléfono
1
Solución
2. Clase Contacto:
1 import j a v a . i o . ∗ ;
2
10 // Metodos
11 public Contacto ( S t r i n g nombre , S t r i n g d i r e c c i o n , int c o d i g o P o s t a l ,
int t e l e f o n o ) {
12 t h i s . nombre = nombre ;
13 this . d i r e c c i o n = d i r e c c i o n ;
14 this . codigoPostal = codigoPostal ;
15 this . t e l e f o n o = t e l e f o n o ;
16 }
17 public S t r i n g t o S t r i n g ( ) {
18 S t r i n g r e s=" Nombre : "+ nombre+ "\n" + " Direccion "+
d i r e c c i o n +"\n" +" Codigo postal : "+ c o d i g o P o s t a l+"\n"+"
Telefono : "+t e l e f o n o +"\n" ;
19 return r e s ;
20 }
21 public S t r i n g getNombre ( ) {
22 return nombre ;
23 }
24
25 public int g e t T e l e f o n o ( ) {
26 return t e l e f o n o ;
27 }
28
2
3. Clase Agenda:
1 import j a v a . i o . ∗ ;
2
7 // Metodos
8 public Agenda ( int maxCont ) {
9 c o n t a c t o s = new Contacto [ maxCont ] ;
10 }
11
22 public S t r i n g t o S t r i n g ( ) {
23 S t r i n g r e s="" ;
24 int c o n t =1;
25 f o r ( int i = 0 ; i < c o n t a c t o s . l e n g t h ; i ++) {
26 i f ( c o n t a c t o s [ i ] != null ) { // c o n t a c t o e n c o n t r a d o
27 r e s +="\ nContacto "+c o n t + "\n" + c o n t a c t o s [ i ] .
toString () ;
28 c o n t++;
29 }
30 }
31 return r e s ;
32 }
33
4
4. Programa de prueba:
1 import j a v a . i o . ∗ ;
2 import j a v a . u t i l . ∗ ;
3
4 public c l a s s TestAgenda {
5 s t a t i c Scanner t e c = new Scanner ( System . i n ) . u s e L o c a l e ( L o c a l e . US) ;
6 s t a t i c Agenda miAgenda=null ;
7
129