Hallo Leute,
ich hab da ein kleines Problem. Als Aufgabe sollen wir in Java ein Wartezimmer simulieren bzw programmieren. Ich hab mir die zwei anderen Topics bereits angesehen, allerdings bringen die mich leider nicht weiter.
Mein Problem sieht folgendermaßen aus: Ich habe meiner Meinung nach das Wartezimmer soweit fertig. Allerdings wenn ich die Methode "nextPersonPlease()" aufrufe, schreibt er bei der Ausgabe leider nicht den Namen der Person hin, sondern folgendes:
"at.fhjoanneum.ima.prog2.Person@42e816 is the next one."
Jetzt lautet meine Frage, wie ich das verhindern kann und das Programm dazu bringen kann mir den richtigen Namen der Person auszugeben.
Ich hoff ihr könnt mir da weiterhelfen. Lg Hofi
Hier rufe ich alles auf:
Das ist die Klasse WaitingRoom:
Und schließlich meine Klasse Person, wobei diese zumindest richtig sein sollte
ich hab da ein kleines Problem. Als Aufgabe sollen wir in Java ein Wartezimmer simulieren bzw programmieren. Ich hab mir die zwei anderen Topics bereits angesehen, allerdings bringen die mich leider nicht weiter.
Mein Problem sieht folgendermaßen aus: Ich habe meiner Meinung nach das Wartezimmer soweit fertig. Allerdings wenn ich die Methode "nextPersonPlease()" aufrufe, schreibt er bei der Ausgabe leider nicht den Namen der Person hin, sondern folgendes:
"at.fhjoanneum.ima.prog2.Person@42e816 is the next one."
Jetzt lautet meine Frage, wie ich das verhindern kann und das Programm dazu bringen kann mir den richtigen Namen der Person auszugeben.
Ich hoff ihr könnt mir da weiterhelfen. Lg Hofi
Hier rufe ich alles auf:
Java:
package at.fhjoanneum.ima.prog2;
public class Wartezimmer {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
WaitingRoom wr=new WaitingRoom(2);
Person werner=new Person("Werner", "Soboth", "2312");
Person susanne=new Person("Susanne","Baier", "3423");
Person maria=new Person("maria","Baier", "3423");
wr.enter(werner);
wr.getNumberOfPersonsInRoom();
wr.enter(susanne);
wr.getNumberOfPersonsInRoom();
wr.enter(maria);
wr.getNumberOfPersonsInRoom();
wr.nextPersonPlease();
wr.getNumberOfPersonsInRoom();
wr.nextPersonPlease();
wr.getNumberOfPersonsInRoom();
wr.nextPersonPlease();
}
}
Das ist die Klasse WaitingRoom:
Java:
package at.fhjoanneum.ima.prog2;
import java.util.LinkedList;
import java.util.Queue;
public class WaitingRoom {
private int capacity;
public Queue<Person> wartezimmer;
public WaitingRoom(int capacity) {
this.wartezimmer = new LinkedList<Person>();
this.capacity = capacity;
}
public boolean isFull() {
if (wartezimmer.size() == capacity) {
return true;
} else {
return false;
}
}
public boolean isEmpty() {
if (wartezimmer.size() == 0) {
return true;
} else {
return false;
}
}
public int getCapacity() {
return this.capacity;
}
public int getNumberOfPersonsInRoom() {
System.out.println(wartezimmer.size());
return wartezimmer.size();
}
public void enter(Person person) {
if (isFull() == true) {
System.out.println("There's no empty chair in the waiting room!");
} else {
wartezimmer.add(person);
}
}
public Person nextPersonPlease() {
if (isEmpty() == false) {
System.out.println(wartezimmer.element() + " is the next one.");
} else {
System.out.println("There's nobody!");
}
return wartezimmer.poll();
}
}
Und schließlich meine Klasse Person, wobei diese zumindest richtig sein sollte
Java:
package at.fhjoanneum.ima.prog2;
public class Person {
private String socialSecurityNumber;
private String firstname;
private String lastname;
public Person(String socialSecurityNumber)
{
this.socialSecurityNumber = socialSecurityNumber;
}
public Person(String firstname, String lastname, String socialSecurityNumber)
{
this.firstname = firstname;
this.lastname = lastname;
this.socialSecurityNumber = socialSecurityNumber;
}
public String getFirstname() {
return firstname;
}
public String getLastname() {
return lastname;
}
public String getSocialSecurityNumber() {
return socialSecurityNumber;
}
public void setFirstName(String firstname) {
this.firstname = firstname;
}
public void setLastName (String lastname) {
this.lastname = lastname;
}
}