Java - Porque no me anade el elemento a la coleccion?

   
Vista:

Porque no me anade el elemento a la coleccion?

Publicado por Carpediem (7 intervenciones) el 16/04/2008 00:37:31
Bueno este es mi caso concreto resulta que tengo tres clases: Main, Application, Hotel, Floor, Room.

LA cosa es que si ejecuto el metodo addNewRoom que esta en Floor Class desde Application Class pues me lo anade a la coleccion es decir la linea de codigo rooms.add(rb), funciona.

Pero la cuestion es que antes debo ejecutar el metodo security() que esta en la clase Hotel y de ahi si el usuario mete correcta la contrasena pues se ejecuta el metdo addNewRoom() que esta en Floor Class. No se porque pero parece que la room coleccion no funciona cuando hago desde applicacion a Hotel y de Hotel a Floor. pero si hago ejecutar addNewRoom desde Application Class pues si me la anade a la coleccion.

Me pasa lo mismo con las interacciones, es decir, si ejecuto un metodo de Floor Class desde Hotel Class, me lo ejecuta pero si viene algo como que muestre las habitaciones utilizando iterator, pues no me las muestra. Si llamo a ese metodo desde application class pues si.

Necesito ayuda urgente, alguien podria decirme que es lo que esta mal para que pase eso.
Gracias.

Os pongo aqui un poco del codigo de las tres clases que me importan.

//Application Class

public class Application {

public void run(){
Hotel h1 = new Hotel("Edinburgh Hilton Hotel");
Floor f1 = new Floor ("");
h1.addFloors();
f1.addRooms();
h1.security();
f1.displayRooms();
}
}

//Hotel Class

package Hotel;
import java.util.Iterator;
import java.util.Collection;
import java.util.TreeSet;
import textio.*;

public class Hotel {

private Collection floors;

public Iterator floorsIterator() {
return floors.iterator();
}

private String name;

public Hotel(String name) {
this.name = name;
this.floors = new TreeSet();
}

public void addFloors() {

Floor a = new Floor("3");
Floor b = new Floor("1");
Floor c = new Floor("2");

floors.add(a);
floors.add(b);
floors.add(c);

}

public void security() {
String password = "miami";
ConsoleIO.out.print("Please, enter the Password: ");
String secretword = ConsoleIO.in.readLine();
if(secretword.equals(password))
re.addNewRoom();
else
ConsoleIO.out.print("The Password was wrong! ! ! ");

}
Floor re = new Floor("");
}

// Floor Class

package Hotel;
import java.util.Iterator;
import java.util.Collection;
import java.util.TreeSet;
import textio.*;

public class Floor implements Comparable{

public Floor(String number){
this.number = number;
this.rooms = new TreeSet();
}

public Collection rooms;

public Iterator roomsIterator() {
return rooms.iterator();
}

public Floor(){
this("");
}

public int compareTo(Object obj){
Floor floor = (Floor)obj;
return number.compareTo(floor.getNumber());

}

public void addRooms() {

Bedroom a = new Bedroom("1_3", "1", 2, "5", true);
Conference_room b = new Conference_room("1_4", "1", 20, "London Room");
Study_room c = new Study_room("1_2", "1", 3);
Room d = new Bedroom("1_1", "1", 2,"3",false );
Conference_room e = new Conference_room("2_4", "2", 15, "North Bridge Room");
Study_room f = new Study_room("2_3", "2", 4);
Bedroom g = new Bedroom("2_1", "2", 4, "2", false);
Bedroom h = new Bedroom("2_2", "2", 1, "5", true);
Conference_room i = new Conference_room("3_2", "3", 30, "Manchester Room");
Study_room j = new Study_room("3_1", "3", 4);
Study_room k = new Study_room("3_3", "3", 1);
Study_room l = new Study_room("3_4", "3", 2);

rooms.add(a);
rooms.add(b);
rooms.add(c);
rooms.add(d);
rooms.add(e);
rooms.add(f);
rooms.add(g);
rooms.add(h);
rooms.add(i);
rooms.add(j);
rooms.add(k);
rooms.add(l);


}

public void addNewRoom() {
ConsoleIO.out.print("------------------------------ ");
ConsoleIO.out.print("Enter Room Number: ");
String roomnumber = ConsoleIO.in.readLine();
/* Ask for a name to the user. */
ConsoleIO.out.print("Enter Floor Number: ");
/* Save the name into "name" variable. */
String floornumber = ConsoleIO.in.readLine();
ConsoleIO.out.print("Enter Maximum Occupancy: ");
/* Save the quantity into "quantity" variable. */
int maxo = Integer.parseInt(ConsoleIO.in.readLine());
Room rb = new Bedroom(roomnumber,floornumber,maxo, "4", true);
rooms.add(rb);
ConsoleIO.out.print(" ***Added*** ");
ConsoleIO.out.print("------------------------------ ");
}

private String number;
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Porque no me anade el elemento a la coleccion?

Publicado por mario (622 intervenciones) el 16/04/2008 16:04:51
Ya intentast correr alguna herramienta de debug (eclipse, netbeans)??? eso t ayudaría bastante.

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Porque no me anade el elemento a la coleccion?

Publicado por Vicente Lopez (1 intervención) el 28/04/2008 11:15:06
vaya timooo que nadie haga caso a esas instrucciones poque es una perdida de tiempoo

FALSOOOO
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar