LegendaryBeazt
Mitglied
Moin Leutes!
Ich bastel da gerade wiender an nem kleinen Programm herum.
Folgende codes:
Wenn man es ausführt, wird folgendes ausgegeben:
So weit so gut.
Was bzw. wie kann ich jetzt eine Methode implementieren, damit in der Schlange nach jedem Durchlauf der for-Schleife die oberste Person aus der Schleife entfernt und nicht mehr angezeigt wird?
Hoffe jemand hier kann mir helfen.
LG Max
Ich bastel da gerade wiender an nem kleinen Programm herum.
Folgende codes:
Code:
//package listenklassen;
public class Queue<ContentType> {
private class QueueNode {
private ContentType content = null;
private QueueNode nextNode = null;
public QueueNode(ContentType pContent) {
content = pContent;
nextNode = null;
}
public void setNext(QueueNode pNext) {
nextNode = pNext;
}
public QueueNode getNext() {
return nextNode;
}
public ContentType getContent() {
return content;
}
}
private QueueNode head ;
private QueueNode tail ;
public Queue() {
head = null;
tail = null;
}
public boolean isEmpty() {
return head == null;
}
public void enqueue(ContentType pContent) {
if (pContent != null) {
QueueNode newNode = new QueueNode(pContent);
if (this.isEmpty()) {
head = newNode;
tail = newNode;
} else {
tail.setNext(newNode);
tail = newNode;
}
}
}
public void dequeue() {
if (!this.isEmpty()) {
head = head.getNext();
if (this.isEmpty()) {
head = null;
tail = null;
System.out.println("Die Schlange ist leer");
}
}
}
public ContentType front() {
if (this.isEmpty()) {
return null;
} else {
return head.getContent();
}
}
public void sagName(ContentType pContent) {
System.out.println(((person) pContent).infoName());
}
}
Code:
class person{
String name;
public person (String name){
this.name = name;
}
public String infoName() {
return name;
}
}
Code:
public class test {
public static void main(String[] args) {
// TODO Auto-generated method stub
person p1 = new person ("Ezekiel");
person p2 = new person ("Amenadiel");
person p3 = new person ("Gabriel");
person p4 = new person ("Sabbath");
Queue w = new Queue<person>();
w.enqueue(p1);
w.enqueue(p2);
w.enqueue(p3);
w.enqueue(p4);
System.out.println("Erste Person: " + ((person)w.front()).infoName());
w.dequeue();
System.out.println("Zweite Person: " + ((person)w.front()).infoName());
w.dequeue();
System.out.println("Dritte Person: " + ((person)w.front()).infoName());
w.dequeue();
System.out.println("Vierte Person: " + ((person)w.front()).infoName());
}
}
Wenn man es ausführt, wird folgendes ausgegeben:
Code:
Erste Person: Ezekiel
Zweite Person: Amenadiel
Dritte Person: Gabriel
Vierte Person: Sabbath
So weit so gut.
Was bzw. wie kann ich jetzt eine Methode implementieren, damit in der Schlange nach jedem Durchlauf der for-Schleife die oberste Person aus der Schleife entfernt und nicht mehr angezeigt wird?
Hoffe jemand hier kann mir helfen.
LG Max