Modellieren eines Buchungssystems für Busfahrkarten

xImJugo

Aktives Mitglied
Hallo ihr Lieben,
ich befinde mich zur Zeit tief im Stress wegen meines Studiums und muss die folgende Modellierung in Java lösen. Bisher hatte ich wirklich nie Probleme, wenn es um Modellierungen geht, aber bei der folgenden Aufgabe fehlt mir der Input einfach. Nichts läuft wie es soll. Kann mir wer beim Start helfen oder Input geben oder zumindest zeigen , wie ich die Platzhalter( siehe Aufgabe) implementieren soll. Über jegliche Hilfe oder Lösungsvorschläge wäre ich dankbar.

Aufgabe:

In dieser Aufgabe soll ein Buchungssystem für Busfahrkarten implementiert werden. Ein Omnibus,
kurz Bus, ist ein großes Verkehrsmittel, welches unter anderem auch im öffentlichen Personennahverkehr
der Beförderung zahlreicher Personen dient. Hierbei kann ein Omnibus über seine
eindeutige Busnummer identifiziert werden. Eine Fahrkarte ist ein Ausweis, der gegen Entrichtung
eines bestimmten Geldbetrages zur Benutzung eines öffentlichen Verkehrsmittels berechtigt. Ein
Busbahnhof ist eine größere Haltestellenanlage, die als Verknüpfungspunkt verschiedener Buslinien
dient. Hierbei kann jeder Busbahnhof über eine eindeutige Zeichenkette identifiziert werden. Eine
Buslinie ist die Verbindung zweier Busbahnhöfe, die regelmäßig durch Omnibusse bedient wird.

B.1 Platzhalter

Beachten Sie, dass bei der Beschreibung der Eingabe- und Ausgabeformate die Wörter zwischen
spitzen Klammen (< und >) für Platzhalter stehen, welche bei der konkreten Ein- und Ausgabe
durch Werte ersetzt werden. Diese eigentlichen Werte enthalten bei der Ein- und Ausgabe keine
spitzen Klammern.

<Busnummer > Eine natürliche Zahl aus dem offenen Intervall ¹0 1000º, welche bei der Ausgabe
immer mit führenden Nullen auf drei Stellen aufgeführt wird.

<Kundennummer > Eine natürliche Zahl exklusive 0, welche für den ersten Kunde bei 1 beginnt
und für jeden weiteren Kunden um 1 hochgezählt wird.

<Vorname > und <Nachname > Teile des Namens eines Kunden, welche jeweils durch eine
beliebige Zeichenkette ohne Zeilenumbruch und ohne Semikolon angegeben werden.

<Preis > Die Kosten für ein Busticket, welche durch eine positive reelle Zahl mit einem zweistelligen
Nachkommateil, getrennt durch einen Punkt, angegeben werden.

<Rechnungsnummer > Eine natürliche Zahl exklusive 0, welche für die erste Rechnung bei 1
beginnt und für jeden weitere Rechnung um 1 hochgezählt wird.

<Start > und <Ziel > Bezeichner für den Start- und Zielbusbahnhof einer Buslinie in Form
einer Zeichenkette ohne Zeilenumbruch und ohne Semikolon.

<Währung > Kann entweder EUR, USD oder JPY sein.

[.....] aufgabe würde hier noch weiter gehen, aber das sollte ich dann schaffen, aber bei dem Anfang bin ich am Verzweifeln. Bitte helft mir. Wäre sehr dankbar. Danke im Voraus.
 

MoxxiManagarm

Top Contributor
Ich weiß nicht genau, was du von uns erwartest. In dem gezeigten Aufgabenteil nur die Basisklassen definieren mit entsprechenden Namen, Feldern und Relationen. Diese Basisklassen sind für den gezeigten Text: Bus, Fahrkarte, Kunde und Verbindung. Für die Felder musst du dir entsprechende Datentypen überlegen. So ist Preis natürlich ein double. Für die Nummern kommen Ganzzahlige Datentypen in Frage. Währung könnte ggf. auch ein Enum sein.
 
Zuletzt bearbeitet:

xImJugo

Aktives Mitglied
Das ist mir schon klar und den Enum hab ich auch, aber was ist zum Bsp mit Eingaben für die Platzhalter gemeint ? Soll ich die Eingaben per setter Machen oder per Konsoleneingabe ?

Und bei der Umsetzung der methoden ist mir einfach nicht klar, wie ich :
- zum einen einen Int mit Nullen vorne auffülle
- und wie ich es schaffe, dass die rechnungsnummer bzw kundennummer bei 1 startet und dann bei jedem Aufruf automatisch um 1 erhöht wird

da bräuchte ich input
 

lennero

Bekanntes Mitglied
Das ist mir schon klar und den Enum hab ich auch, aber was ist zum Bsp mit Eingaben für die Platzhalter gemeint ? Soll ich die Eingaben per setter Machen oder per Konsoleneingabe ?

Und bei der Umsetzung der methoden ist mir einfach nicht klar, wie ich :
- zum einen einen Int mit Nullen vorne auffülle
- und wie ich es schaffe, dass die rechnungsnummer bzw kundennummer bei 1 startet und dann bei jedem Aufruf automatisch um 1 erhöht wird

da bräuchte ich input

Du sollst keinen int mit nullen füllen sondern die Ausgabe so formatieren, dass die int Variable mit voranstehenden Nullen angezeigt wird.

Zu 2: du kannst zum Beispiel eine statische int Variable jedesmal im Konstruktor inkrementieren und zur Kundennummer dazuaddieren. Gibt aber bestimmt bessere Lösungen.
 

MoxxiManagarm

Top Contributor
- zum einen einen Int mit Nullen vorne auffülle
https://dzone.com/articles/java-string-format-examples // suche nach Pad with Zeros

und wie ich es schaffe, dass die rechnungsnummer bzw kundennummer bei 1 startet und dann bei jedem Aufruf automatisch um 1 erhöht wird

Java:
class MyEntity {
  private static int LETZTE = 0;

  private int nummer;

  public MyEntity() {
    nummer = ++LETZTE;
  }
}
 

MoxxiManagarm

Top Contributor
Zu 2: du kannst zum Beispiel eine statische int Variable jedesmal im Konstruktor inkrementieren und zur Kundennummer dazuaddieren. Gibt aber bestimmt bessere Lösungen.
Würde ich für den Fall nicht sagen. Du könntest noch eine Art Kundenmanager bauen, der die Nummer über die Verwaltungsliste (size?) herausfindet. Aber es ist nicht unbedingt besser und vor allem sehe ich keinen Grund in der Aufgabe dafür.


PS.:
Und bei der Umsetzung der methoden ist mir einfach nicht klar, wie ich :

Siehst du, auf konkrete Fragen bekommst du konkrete Anworten. Keep it going.
 

xImJugo

Aktives Mitglied
Kann mir bitte wer sagen, wieso das einfach nicht klappen will mit den Nullen ?
Java:
public class Bus {
    private int busNumber;

    public int getBusNumber() {
        if (busNumber < 10) {
            String s = String.format("00%d", busNumber);
            busNumber = Integer.parseInt(s);
            return busNumber;
        }
        if (busNumber < 100) {
            String s = String.format("0%d", busNumber);
            busNumber = Integer.parseInt(s);
            return busNumber;
        }
        if (busNumber > 100) {
            return busNumber;

        }
        return busNumber;
    }

    public void setBusnumber(int number) {
        if (number > 0 && number < 1000) {
            this.busNumber = number;
        }
    }

    public static void main(String[] args) {
        Bus bus = new Bus();
        bus.setBusnumber(20);
        System.out.println(bus.getBusNumber());
    }
}
 

xImJugo

Aktives Mitglied
Also Hintergund ist ja dass beim Setzen der Busnummer sie im Intervall von 1 bis 999 liegen muss und beim Ausgeben muss die Busnummer immer auf 3 Stellen aufgefüllt werden. Also eine Zahl kleiner als 10 braucht 2 nuller etc
Kann mir bitte wer sagen, wieso das einfach nicht klappen will mit den Nullen ?
Java:
public class Bus {
    private int busNumber;

    public int getBusNumber() {
        if (busNumber < 10) {
            String s = String.format("00%d", busNumber);
            busNumber = Integer.parseInt(s);
            return busNumber;
        }
        if (busNumber < 100) {
            String s = String.format("0%d", busNumber);
            busNumber = Integer.parseInt(s);
            return busNumber;
        }
        if (busNumber > 100) {
            return busNumber;

        }
        return busNumber;
    }

    public void setBusnumber(int number) {
        if (number > 0 && number < 1000) {
            this.busNumber = number;
        }
    }

    public static void main(String[] args) {
        Bus bus = new Bus();
        bus.setBusnumber(20);
        System.out.println(bus.getBusNumber());
    }
}
 

xImJugo

Aktives Mitglied
Glaubt mir ich hatte das auch schon und es klappt trotzdem einfach nicht. Die Zahl wird ausgegeben aber eben ohne das Auffüllen und ich check einfach nicht wieso. Hat es was mit dem Parsen zu tun ?
Java:
public class Bus {
    private int busNumber;

    public int getBusNumber() {
        String s = String.format("%03d", busNumber);
        return Integer.parseInt(s);
    }

    public void setBusnumber(int number) {
        if (number > 0 && number < 1000) {
            this.busNumber = number;
        }
    }

    public static void main(String[] args) {
        Bus bus = new Bus();
        bus.setBusnumber(20);
        System.out.println(bus.getBusNumber());
    }
}
Ausgabe 20
 

xImJugo

Aktives Mitglied
Diese Bemerkung hat geholfen. Ich musste eine zweite Variable als String machen. Jetzt klappts, aber ich weiß nicht ob das so Sinn der Sache war, aber naja. Danke
 

MoxxiManagarm

Top Contributor
Kleines Beispiel, damit es vielleicht klarer wird

Java:
public class Bus {
    private int nummer;
    
    public void setNummer(int nummer) {
        if (nummer > 0 && nummer < 1000) {
            this.nummer = nummer;
        }
    }
    
    @Override
    public String toString() {
        return String.format("%03d", nummer);
    }

     public static void main(String []args){
        Bus bus = new Bus();
        bus.setNummer(20);
        
        System.out.println("Heute fährt der Bus " + bus);
     }
}
 

xImJugo

Aktives Mitglied
Danke danke. Ich hatte es zwar schon bzw ich glaube jetzt mein Grundgerüst mit allen Platzhaltern aus der Aufgabe implementiert zu haben, aber ich bin mir überhaupt net sicher, ob das was ich tue richtig ist,
Euch allen trotzdem ein herzlichstes Danke und falls was sein sollte, hoff ich natürlich, dass ihr mir wieder so liebevoll weiterhelfen könnt.
 

xImJugo

Aktives Mitglied
ich weiß nicht ob ich einen Post aufmachen sollte oder, ob ich es hier erfrage, aber ich probier mein Glück einfach mal hier. Und zwar ist jetzt mein Problem, dass ich zwar die Grundgerüstbausteine soweit habe, aber ich nicht weiß welche Datenstruktur ich zum Speichern der Buchungen für die Buslinien benötige. Ich darf für die Aufgabe mir selbst etwas bauen oder eben das Collection Framework von Java benutzen (Collection, List, Hashmaps, SortedList etc), aber welche wäre davon am sinnvollsten?

hier erst mal die Aufgabe :

"Nach dem Start nimmt Ihr Programm über die Konsole mittels Terminal . readLine () Eingaben
entgegen, welche im Folgenden näher spezifiziert werden. Nach Abarbeitung einer Eingabe
wartet Ihr Programm auf weitere Eingaben, bis das Programm irgendwann durch die Eingabe der
Zeichenfolge quit beendet wird.

Achten Sie darauf, dass durch die Ausführung der folgenden Befehle die gegebene Spezifikationen
nicht verletzt werden und geben Sie in diesen Fällen immer eine aussagekräftige Fehlermeldung aus.
Wenn die Benutzereingabe nicht dem vorgegebenen Format entspricht, ist auch eine Fehlermeldung
auszugeben. Nach der Ausgabe einer Fehlermeldung soll das Programm wie erwartet fortfahren
und wieder auf die nächste Eingabe warten. Jede Fehlermeldung muss mit Error, beginnen und
darf keine Zeilenumbrüche enthalten. Den weiteren Text der Fehlermeldung dürfen Sie frei wählen,
er sollte jedoch sinnvoll sein.

B.2.1 Der add-Befehl
Dieser Befehl fügt dem Buchungssystem eine neue buchbare Buslinie hinzu.
Eingabeformat add <Busnummer >;< Start >;< Ziel >;< Preis >;<Währung >
Ausgabeformat Im Erfolgsfall wird OK ausgegeben.

B.2.2 Der remove-Befehl
Mit dem Befehl ist es möglich, Buslinien aus den Buchungssystem zu entfernen. Gestrichene
Buslinien mit einer Busnummer können jedoch zu einem späteren Zeitpunkt mittels add-Befehl
dem System wieder hinzugefügt werden.
Eingabeformat remove <Busnummer >
Ausgabeformat Im Erfolgsfall wird OK ausgegeben. "

Die ganze Geschichte mit den Eingaben und Fehlerbehandlung sollte mir klar sein, aber wie ihr seht muss ich für den add Befehl mehrere verschiedene Elemente einfügen und irgendwo speichern. Die Frage ist aber wo? (es gibt auch nen Befehl der später alle Buslinien in jeweils einer Zeile sortiert nach der Busnummer ausgeben muss). Ist das irgendwie realisierbar? In meinem Kopf sind die ganze Zeit Arrays oder Listen, aber ich bin mir relativ unsicher, daher bitte ich mal wieder um eure Hilfe. Also die Idee ist, dass ich der add Methode die oben genannten Parameter mitgebe und es so gespeichert wird, dass es im Buchungssystem ist und es in einer Zeile in der Konsole ausgebbar ist.
Danke
 

MoxxiManagarm

Top Contributor
ich weiß nicht ob ich einen Post aufmachen sollte oder, ob ich es hier erfrage, aber ich probier mein Glück einfach mal hier.
Solange es noch die gleiche Aufgabe ist, ist das schon in Ordnung hier.

aber ich nicht weiß welche Datenstruktur ich zum Speichern der Buchungen für die Buslinien benötige. Ich darf für die Aufgabe mir selbst etwas bauen oder eben das Collection Framework von Java benutzen (Collection, List, Hashmaps, SortedList etc), aber welche wäre davon am sinnvollsten?
Jede Collection eignet sich perse dafür. Die Frage ist was genau damit dann noch passiert. ArrayList ist erstmal nicht verkehrt.

aber wie ihr seht muss ich für den add Befehl mehrere verschiedene Elemente einfügen und irgendwo speichern. Die Frage ist aber wo?

Alles, was du dem add Befehl mitgibst, sind Attribute der Bus Klasse. Du hast also ein Verwaltungssystem, dieses enthält alle Buchungen, Busse, Kunden und Verbindungen. Ich nenne das Buchungssystem einfach mal FlixbusManager.

Java:
class FlixbusManager {
  private List<Bus> busse = new ArrayList<>();
  private List<Ticket> tickets = new ArrayList<>();
  private List<Verbindung> verbindungen = new ArrayList<>();
  private List<Kunde> kunden = new ArrayList();

  public void starteSitzung() {
     // [...] Eingabeschleife, die den add Befehl findet
    // param sei hier der hintere Teil ab Busnummer
    // Bus hat einen Konstruktur, der diesen hinteren Teil parsen und seine Attribute befüllen kann
   // bei schlechten Werten wird eine IllegalArgumentException geworfen
    try {
      busse.add(new Bus(param));
      System.out.println("OK");
    } catch (IllegalArgumentException e) {
      System.out.println("ERROR " + e.getMessage());
    }
  }
}

(es gibt auch nen Befehl der später alle Buslinien in jeweils einer Zeile sortiert nach der Busnummer ausgeben muss). Ist das irgendwie realisierbar?

ArrayList ist eine List und besitzt daher die sort Methode.

Java:
busse.sort(Comparator.comparingInt(Bus::getNummer));
busse.sort(Comparator.naturalOrder()); // falls Bus das Comparable Interface implementiert
 
Zuletzt bearbeitet:

xImJugo

Aktives Mitglied
Sorry fürs späte antworten, aber ich sitze erst jetzt wieder vor dem Pc. Danke erstmal für die Hilfe, aber eine Frage, hat es einen Grund wieso du ein Mal von Liste in deinem Code sprichst und dann von der ArrayList?
 

lennero

Bekanntes Mitglied
Sorry fürs späte antworten, aber ich sitze erst jetzt wieder vor dem Pc. Danke erstmal für die Hilfe, aber eine Frage, hat es einen Grund wieso du ein Mal von Liste in deinem Code sprichst und dann von der ArrayList?

List ist ein Interface. ArrayList implementiert dieses Interface genauso wie LinkedList.

Du könntest später dahergehen und schreiben

Java:
List<Bus> buslist = new LinkedList<Bus>();

ohne etwas am restlichen Code zu ändern (Vorrausgesetzt du möchtest keine ArrayList spezifischen Methoden nutzen). Wenn du List nutzt wird garantiert dass du auch nur Methoden die im Interface List beschrieben werden nutzt. Und genau diese Methoden werden von ArrayList implementiert.

 

xImJugo

Aktives Mitglied
Ignoriert den Code, den ich in den Kommentar gepackt habe. Die Fehlerbehandlung mach ich erst am Ende in der main, aber ich bin jetzt an einen Punkt gekommen, wo ich mich frage, ob eine Arraylist tatsächlich das richtige ist. Die unten stehende Methode funktioniert zwar so wie sie soll, aber sie speichert ja jetzt alle erzeugten Buchungen in 3 verschiedenen Listen.

1. Frage : Später muss ich alle Buchungen in der Form wie bei add printen. Geht das trotz der vielen Listen?

2.Frage : Bei der Arraylist kann ich ja nur auf den index der Plätze der Inhalte zugreifen oder ? Weil ich brauche jetzt eine remove Methode, die einen int entgegennimmt und dann nach einem Bus mit der entsprechenden Busnummer sucht, aber meine Arraylist für die Busse kann ja nicht auf meine Bus klasse und der getBusNumber methode zugreifen. Was soll ich tun? Wäre hier eine Collection nicht doch sinnvoller?

Java:
public void add(int busnumber, String start, String goal, double price) {
        // try {
        busse.add(new Bus(busnumber));
        station.add(new Station(start, goal));
        tickets.add(new Ticket(price));
        System.out.println("OK");
        // } catch (IllegalArgumentException e) {
        // System.out.println("ERROR " + e.getMessage());
        // }
    }
 

xImJugo

Aktives Mitglied
Also die Modellierung ist relativ simple :
ich habe eine station klasse (enthält namen vom Bahnhof, zielbahnhof und zielbahnhof)
- ticket klasse (enthält nur preis)
- bus (enthält nur busnummer)
- costumer/kunde ( vorname, nachname, kundennummer)
und eben die bookingSystem klasse in der ich alle klassen + Rechungsnummer als Attribut habe
alles natürlich mit setter/getter und Konstruktoren.

Wenn nun der add Befehl zum Bsp mit (15, berlin, paris,500.50) aufgerufen wird, sollen diese Sachen entsprechend erzeugt werden, also ein Bus, der mit der Busnummer 15 gekennzeichnet ist, von Berlin nach Paris fährt, und der ganze Spaß 500.50 kostet. Soweit so gut, im Moment werden alle einzelnen Bausteine durch ihre jeweiligen Konstruktoren erzeugt und in ihrer separaten ArrayListen (wie oben gezeigt) gespeichert. Aber jetzt ergibt sich beim remove Befehl das erste Problem. Beim Methodenaufruf remove(15) soll meine buss ArrayList seine Elemente durchsuchen und schauen ob es irgendwo einen Bus mit nummer 15 gibt (die theorie zum löschen ist mir bewusst), aber ich glaube die Arrayliste kann meine beschriebene Funktionalität nicht oder ?
Irgendwer Lösungsvorschläge ? Collection? einfacher Array?

Wie gesagt dann kommt noch der 3. Befehl, der soll die Buslinien ausdrucken können. Also wenn der print Befehl aufgerufen wird, soll 15 berlin paris 500.50 ausgegeben werden (und ggnf aufsteigend nach der Busnummer sortieren ohne, dass sich die Buchung ändert)
 

mihe7

Top Contributor
ich habe eine station klasse (enthält namen vom Bahnhof, zielbahnhof und zielbahnhof)
- ticket klasse (enthält nur preis)
- bus (enthält nur busnummer)
- costumer/kunde ( vorname, nachname, kundennummer)
und eben die bookingSystem klasse in der ich alle klassen + Rechungsnummer als Attribut habe
alles natürlich mit setter/getter und Konstruktoren.
Man kann hier nicht sehen, was der Zweck des Ganzen ist. Wenn es nur darum geht, Tickets zu verkaufen, wofür brauchst Du dann Bus und Bahnhöfe? Da fehlt doch was...
 

MoxxiManagarm

Top Contributor
Das Ticket hat keinen Preis in der Aufgabe. Wir reden bei der Aufgabe von einem Modell wie Flixbus, nicht von Stadtbus. Du hast eine Fahrt, auf der Fahrt fährt ein Bus von A nach B. Die Fahrt besitzt den Preis. Ein Ticket berechtigt einen Kunden für diese Fahrt. Der zu entrichtende Preis ist dem Kunden über diese Beziehung bekannt.
 

xImJugo

Aktives Mitglied
Hier ist nun die restliche Aufgabe. Hab sie jetzt einfach komplett eingefügt, statt mich tot zu reden xD. Es geht ja nicht nur darum Tickets zu verkaufen. Es geht um Buchungen bzw ein Buchungssystem für Reisen und die besteht aus einem Transportmittel (= Bus mit busnumber), Start und ZielBahnhof (= Buslinie), Preis/Ticket und eigentlich noch Währung . Später kommt wie unten zu sehen noch Befehle zum buchen, wo dann auch Kundennummern und Rechnungsnummern wichtig wird. Hoffentlich ist es jetzt klarer.


Aufgabe :
In dieser Aufgabe soll ein Buchungssystem für Busfahrkarten implementiert werden. Ein Omnibus,
kurz Bus, ist ein großes Verkehrsmittel, welches unter anderem auch im öffentlichen Personennahverkehr
der Beförderung zahlreicher Personen dient. Hierbei kann ein Omnibus über seine
eindeutige Busnummer identifiziert werden. Eine Fahrkarte ist ein Ausweis, der gegen Entrichtung
eines bestimmten Geldbetrages zur Benutzung eines öffentlichen Verkehrsmittels berechtigt. Ein
Busbahnhof ist eine größere Haltestellenanlage, die als Verknüpfungspunkt verschiedener Buslinien
dient. Hierbei kann jeder Busbahnhof über eine eindeutige Zeichenkette identifiziert werden. Eine
Buslinie ist die Verbindung zweier Busbahnhöfe, die regelmäßig durch Omnibusse bedient wird.
[... PlatzHalter vom Anfang..]

B.2 Befehle
Nach dem Start nimmt Ihr Programm über die Konsole mittels Terminal . readLine () Eingaben
entgegen, welche im Folgenden näher spezifiziert werden. Nach Abarbeitung einer Eingabe
wartet Ihr Programm auf weitere Eingaben, bis das Programm irgendwann durch die Eingabe der
Zeichenfolge quit beendet wird.
Achten Sie darauf, dass durch die Ausführung der folgenden Befehle die gegebene Spezifikationen
nicht verletzt werden und geben Sie in diesen Fällen immer eine aussagekräftige Fehlermeldung aus.
Wenn die Benutzereingabe nicht dem vorgegebenen Format entspricht, ist auch eine Fehlermeldung
auszugeben. Nach der Ausgabe einer Fehlermeldung soll das Programm wie erwartet fortfahren
und wieder auf die nächste Eingabe warten. Jede Fehlermeldung muss mit Error, beginnen und
darf keine Zeilenumbrüche enthalten. Den weiteren Text der Fehlermeldung dürfen Sie frei wählen,
er sollte jedoch sinnvoll sein.

B.2.1 Der add-Befehl
Dieser Befehl fügt dem Buchungssystem eine neue buchbare Buslinie hinzu.

Eingabeformat add <Busnummer >;< Start >;< Ziel >;< Preis >;<Währung >

Ausgabeformat Im Erfolgsfall wird OK ausgegeben.

B.2.2 Der remove-Befehl
Mit dem Befehl ist es möglich, Buslinien aus den Buchungssystem zu entfernen. Gestrichene
Buslinien mit einer Busnummer können jedoch zu einem späteren Zeitpunkt mittels add-Befehl
dem System wieder hinzugefügt werden.

Eingabeformat remove <Busnummer >

Ausgabeformat Im Erfolgsfall wird OK ausgegeben.

B.2.3 Der list - route-Befehl
Der parameterlose Befehl gibt die Liste aller buchbaren Buslinien auf der Konsole aus.

Eingabeformat list - route

Ausgabeformat <Busnummer >;< Start >;< Ziel >;< Preis >;<Währung >
Die buchbaren Buslinien werden zeilenweise analog des Eingabeformats des add-Befehls aufsteigend
sortiert nach der <Busnummer > ausgegeben. Groß- und Kleinschreibung des Start- und Zielbusbahnhofs
stimmen mit der zuvor mittels add-Befehl getätigten Eingabe überein. Für den Fall, dass
noch keine Buslinie hinzugefügt wurden, findet keine Ausgabe statt.

B.2.4 Der book-Befehl
Mit dem Befehl kann ein Kunde ein Busticket buchen. Jeder erfolgreichen Buchung wird eine neuen
Rechnungsnummer zugewiesen. Auch wird mit jeder erfolgreichen Buchung ein neuer Kunde mit
einer eindeutigen Kundennummer angelegt, es sei denn ein Kunde mit dem gleichen Namen hat
bereits früher eine Bestellung getätigt.
Eingabeformat book <Busnummer >;< Vorname >;< Nachname >
Ausgabeformat <Rechnungsnummer >;< Kundennummer >
Im Erfolgsfall werden die zugehörige Rechnungs- und Kundennummern angezeigt. Rechnungsnummern
für die mittels remove-Befehl gelöschten Buslinien werden nicht mit ausgegeben und auch
nicht wiederverwendet.

B.2.5 Der list-bookings-Befehl
Der parameterlose Befehl gibt eine Liste aller bisher getätigten Buchungen auf der Konsole auf. Die
mittels remove-Befehl gelöschten Buslinien werden nicht mit ausgegeben.

Eingabeformat list - bookings

Ausgabeformat <Kundennummer >,< Busnummer >,< Rechnungsnummer >
Alle Busticketbuchungen werden zeilenweise ausgegeben. Die Ausgabe erfolgt aufsteigend sortiert
nach der Kundennummer. Bei identischer Kundennummer wird absteigend nach der Rechnungsnummer
sortiert. Für den Fall, dass noch keine Buchungen vorgenommen wurden, findet keine
Ausgabe statt.

B.2.6 Der quit-Befehl
Der parameterlose Befehl ermöglicht es, das Buchungssystem vollständig zu beenden. Dabei findet
keine Konsolenausgabe statt. Beachten Sie, dass hierfür keine Methoden wie System . exit ()
oder Runtime . exit () verwendet werden dürfen.
 

MoxxiManagarm

Top Contributor
Du brauchst diese 4 Entity Klassen:
Bus(Busnummer)
Verbindung(Bus, Start, Ziel, Preis, Währung) // ist 1 Fahrt
Ticket(Rechnungsnummer, Verbindung, Kunde)
Kunde(Kundennummer, Vorname, Nachname)

Dann hast du eine Managerklasse, welche die Befehle entgegen nimmt und eine Liste zu jeder dieser 4 Entity Klassen verwaltet.

EDIT: ich habe nochmal gelesen und glaube Bus als Entity und Relation zu Verbindung entfällt, stattdessen wird einfach nur die Busnummer eingetragen.
 
Zuletzt bearbeitet:

lennero

Bekanntes Mitglied
Wenn nun der add Befehl zum Bsp mit (15, berlin, paris,500.50) aufgerufen wird, sollen diese Sachen entsprechend erzeugt werden, also ein Bus, der mit der Busnummer 15 gekennzeichnet ist, von Berlin nach Paris fährt, und der ganze Spaß 500.50 kostet. Soweit so gut, im Moment werden alle einzelnen Bausteine durch ihre jeweiligen Konstruktoren erzeugt und in ihrer separaten ArrayListen (wie oben gezeigt) gespeichert. Aber jetzt ergibt sich beim remove Befehl das erste Problem. Beim Methodenaufruf remove(15) soll meine buss ArrayList seine Elemente durchsuchen und schauen ob es irgendwo einen Bus mit nummer 15 gibt (die theorie zum löschen ist mir bewusst), aber ich glaube die Arrayliste kann meine beschriebene Funktionalität nicht oder ?
Irgendwer Lösungsvorschläge ? Collection? einfacher Array?

Wie gesagt dann kommt noch der 3. Befehl, der soll die Buslinien ausdrucken können. Also wenn der print Befehl aufgerufen wird, soll 15 berlin paris 500.50 ausgegeben werden (und ggnf aufsteigend nach der Busnummer sortieren ohne, dass sich die Buchung ändert)

Warum nicht?
 

xImJugo

Aktives Mitglied
Du brauchst diese 4 Entity Klassen:
Bus(Busnummer)
Verbindung(Bus, Start, Ziel, Preis, Währung) // ist 1 Fahrt
Ticket(Rechnungsnummer, Verbindung, Kunde)
Kunde(Kundennummer, Vorname, Nachname)

Dann hast du eine Managerklasse, welche die Befehle entgegen nimmt und eine Liste zu jeder dieser 4 Entity Klassen verwaltet.

EDIT: ich habe nochmal gelesen und glaube Bus als Entity und Relation zu Verbindung entfällt, stattdessen wird einfach nur die Busnummer eingetragen.
Meinst du insgesamt 1 Liste für alle oder jeweils pro Klasse eine Liste zum Verwalten, wie es oben schon zu sehen ist?
 

xImJugo

Aktives Mitglied
Du brauchst diese 4 Entity Klassen:
Bus(Busnummer)
Verbindung(Bus, Start, Ziel, Preis, Währung) // ist 1 Fahrt
Ticket(Rechnungsnummer, Verbindung, Kunde)
Kunde(Kundennummer, Vorname, Nachname)

Dann hast du eine Managerklasse, welche die Befehle entgegen nimmt und eine Liste zu jeder dieser 4 Entity Klassen verwaltet.

EDIT: ich habe nochmal gelesen und glaube Bus als Entity und Relation zu Verbindung entfällt, stattdessen wird einfach nur die Busnummer eingetragen.

und wie würden die Konstruktoren jeweils für die Klassen aussehen? würde der Konstruktor von Bus leer bleiben oder soll er direkt einen int entgegen nehmen und als Busnumber initialisieren? Wenn letzteres der Fall ist, wie steck ich den Bus dann in die Verbindungsklasse ?
 

lennero

Bekanntes Mitglied
Weil ich nicht wüsste wie ? Die arrayListe besitzt zwar die contain methode, die guckt ob gewisse Objekte in der Liste zu finden sind, aber wenn ich versuche liste.contains(bus.getBusNumber()) aufzurufen, erkennt er mein Bus objekt nicht

BusNumber ist ein int. Contains überprüft mithilfe von object.equals ob das Element in der Liste vorhanden ist. Du prüfst also ob ein integer in einer Liste von Bussen vorhanden ist. Also gibt contains auch immer ein false zurück. Du musst der contains Methode entweder das Bus Objekt übergeben, oder du überschreibst die equals Methode in deiner Bus Klasse.
 

MoxxiManagarm

Top Contributor
Ich hatte oben meinen Eintrag schon editiert und gemeint ich habe mich vermutlich vertan und du brauchst keine Extra Busklasse. Der Bus scheint lediglich durch die Nummer in der Verbindung repräsentiert zu werden. Verbleiben 3 Entity Klassen.
 

xImJugo

Aktives Mitglied
BusNumber ist ein int. Contains überprüft mithilfe von object.equals ob das Element in der Liste vorhanden ist. Du prüfst also ob ein integer in einer Liste von Bussen vorhanden ist. Also gibt contains auch immer ein false zurück. Du musst der contains Methode entweder das Bus Objekt übergeben, oder du überschreibst die equals Methode in deiner Bus Klasse.

Das ist ja eben das Problem. Wie übergebe ich denn das Bus Objekt der contains methode ? Und welche deiner beiden Optionen würdest du mir empfehlen ?
 

xImJugo

Aktives Mitglied
Du suchst ja auch nicht die Busnummer in der Liste, sondern das Element mit dieser Busnummer in der Liste.
Ist mir schon bewusst, aber meine buss Arraylist findet meine Busse nicht und dementsprechend kann ich auch nicht die getNumber methode auf mein Busobjekt anwenden. Ich verzweifle schon wieder seit stunden daran. Kann mir wer das bitte beispielhaft zeigen
 

lennero

Bekanntes Mitglied
Ist mir schon bewusst, aber meine buss Arraylist findet meine Busse nicht und dementsprechend kann ich auch nicht die getNumber methode auf mein Busobjekt anwenden. Ich verzweifle schon wieder seit stunden daran. Kann mir wer das bitte beispielhaft zeigen

Java:
for(int i = 0; i < busList.size(); i++)
    if(busList.get(i).getBusNumber() == 1234) //bus mit nummer 1234 gefunden
        Bus target = busList.get(i);
 

xImJugo

Aktives Mitglied
Java:
for(int i = 0; i < busList.size(); i++)
    if(busList.get(i).getBusNumber() == 1234) //bus mit nummer 1234 gefunden
        Bus target = busList.get(i);
Ach ich bin dumm. Das ist ja fast das gleiche Itterationsprinzip wie bei normalen Arrays, aber danke du rettest mir meinen Tag, wobei ich gerade merke, dass ich einen Denkfehler hatte. Ich hab jetzt eine funktionierende Methode, die zwar den richtigen Bus löscht, aber eben nicht die Busverbindung, aber das sollte ich hinbekommen. Danke euch allen für jetzt
 

Javinner

Top Contributor
@xImJugo
Wie wäre es mit:
Java:
void removeVehicle(Vehicle v)
{
    if(this.vehicleList.contains(v))
    {
        this.vehicleList.remove(v);
    }
}
oder...
Java:
void removeVehicle(Vehicle v)
{
    int toRemove = this.vehicleList.indexOf(v);
    this.vehicleList.remove(this.vehicleList.getI(toRemove));
}
Dabei wird jedes Fahrzeug Anhand Hash identifiziert.
 

xImJugo

Aktives Mitglied
@xImJugo
Wie wäre es mit:
Java:
void removeVehicle(Vehicle v)
{
    if(this.vehicleList.contains(v))
    {
        this.vehicleList.remove(v);
    }
}
oder...
Java:
void removeVehicle(Vehicle v)
{
    int toRemove = this.vehicleList.indexOf(v);
    this.vehicleList.remove(this.vehicleList.getI(toRemove));
}
Dabei wird jedes Fahrzeug Anhand Hash identifiziert.

Danke für die Hilfe, aber der remove Befehl war jetzt nicht wirklich das Problem. Auch der print Befehl für die Buslinien, der alle Buslinien ,die in der ArrayList gespeichert sind, ausgeben soll , habe ich mehr oder weniger . Nur habe ich da das Problem, dass ich wirklich keine Ahnung habe, wie ich die Buslinien nach ihrer Busnummer aufsteigend sortieren kann. Also eine Buslinie (int busnumber, String start, string goal, ....) soll nach der Busnumber im Konstruktor aufsteigend sortiert werden.

2. Problem hab ich jetzt beim book Befehl (siehe oben Aufgabenstellung )

Mit dem Befehl kann ein Kunde ein Busticket buchen. Jeder erfolgreichen Buchung wird eine neuen
Rechnungsnummer zugewiesen. Auch wird mit jeder erfolgreichen Buchung ein neuer Kunde mit
einer eindeutigen Kundennummer angelegt, es sei denn ein Kunde mit dem gleichen Namen hat
bereits früher eine Bestellung getätigt.

Eingabeformat book <Busnummer >;< Vorname >;< Nachname >

Ausgabeformat <Rechnungsnummer >;< Kundennummer >
Im Erfolgsfall werden die zugehörige Rechnungs- und Kundennummern angezeigt. Rechnungsnummern
für die mittels remove-Befehl gelöschten Buslinien werden nicht mit ausgegeben und auch
nicht wiederverwendet

Java:
public void book1(int busnumber, String prename, String postname) {
        for (int i = 0; i < busline.size(); i++) {
            if (busline.get(i).getBusNumber() == busnumber) { // Überprüfen ob die Buslinie existiert
                costumer.add(new Costumer(prename, postname)); // Wenn ja wird ein neuer Costumer erstellt
                createBillNumber();                             // mit neuer Rechnungsnummer
                for ( i = 0; i < costumer.size(); i++) {
                    int b = costumer.get(i).getCostumerNumber();
                    String s = String.format("%s;%s<Kundennummer>", billNumber, b);
                    System.out.println(s);
                }
            }
        }
    }
Ausgabe sollte Rechnungsnummer mit entsprechender Kundennummer des Kunden sein, aber das Problem ist, dass ich nicht direkt auf die Kundennummer zugreifen kann, da die in der Klasse des Costumer steckt. Welche Möglichkeiten habe ich? Ich hatte bisher an eine neue Klasse Buchung gedacht (die wäre für den vorletzten Befehl print Buchungen auch sinnvoll) oder ich packe die Kundennummer mit der Methode zum erstellen der Kundennummer, ähnlich wie bei der Rechnungsnummer in die Booking System Klasse? So wie ich es in meinem Code habe, greif ich zwar auf die Kundennummer zu, aber sie wird zu oft geprinted
 

xImJugo

Aktives Mitglied
Danke für die Hilfe, aber der remove Befehl war jetzt nicht wirklich das Problem. Auch der print Befehl für die Buslinien, der alle Buslinien ,die in der ArrayList gespeichert sind, ausgeben soll , habe ich mehr oder weniger . Nur habe ich da das Problem, dass ich wirklich keine Ahnung habe, wie ich die Buslinien nach ihrer Busnummer aufsteigend sortieren kann. Also eine Buslinie (int busnumber, String start, string goal, ....) soll nach der Busnumber im Konstruktor aufsteigend sortiert werden.

2. Problem hab ich jetzt beim book Befehl (siehe oben Aufgabenstellung )

Mit dem Befehl kann ein Kunde ein Busticket buchen. Jeder erfolgreichen Buchung wird eine neuen
Rechnungsnummer zugewiesen. Auch wird mit jeder erfolgreichen Buchung ein neuer Kunde mit
einer eindeutigen Kundennummer angelegt, es sei denn ein Kunde mit dem gleichen Namen hat
bereits früher eine Bestellung getätigt.

Eingabeformat book <Busnummer >;< Vorname >;< Nachname >

Ausgabeformat <Rechnungsnummer >;< Kundennummer >
Im Erfolgsfall werden die zugehörige Rechnungs- und Kundennummern angezeigt. Rechnungsnummern
für die mittels remove-Befehl gelöschten Buslinien werden nicht mit ausgegeben und auch
nicht wiederverwendet

Java:
public void book1(int busnumber, String prename, String postname) {
        for (int i = 0; i < busline.size(); i++) {
            if (busline.get(i).getBusNumber() == busnumber) { // Überprüfen ob die Buslinie existiert
                costumer.add(new Costumer(prename, postname)); // Wenn ja wird ein neuer Costumer erstellt
                createBillNumber();                             // mit neuer Rechnungsnummer
                for ( i = 0; i < costumer.size(); i++) {
                    int b = costumer.get(i).getCostumerNumber();
                    String s = String.format("%s;%s<Kundennummer>", billNumber, b);
                    System.out.println(s);
                }
            }
        }
    }
Ausgabe sollte Rechnungsnummer mit entsprechender Kundennummer des Kunden sein, aber das Problem ist, dass ich nicht direkt auf die Kundennummer zugreifen kann, da die in der Klasse des Costumer steckt. Welche Möglichkeiten habe ich? Ich hatte bisher an eine neue Klasse Buchung gedacht (die wäre für den vorletzten Befehl print Buchungen auch sinnvoll) oder ich packe die Kundennummer mit der Methode zum erstellen der Kundennummer, ähnlich wie bei der Rechnungsnummer in die Booking System Klasse? So wie ich es in meinem Code habe, greif ich zwar auf die Kundennummer zu, aber sie wird zu oft geprinted
Also zu 2. Problem :
Wenn ich die Kundennummer ins BookingSystem packe, funktioniert es schon mal einfacher, aber ich weiß nicht wie gut es für meine allgemeine Modellierung ist, da normaIerweise die Kundennummer ja zum Kunden selbst gehört
 

xImJugo

Aktives Mitglied
Also zu 2. Problem :
Wenn ich die Kundennummer ins BookingSystem packe, funktioniert es schon mal einfacher, aber ich weiß nicht wie gut es für meine allgemeine Modellierung ist, da normaIerweise die Kundennummer ja zum Kunden selbst gehört
und jetzt fehlt mir immernoch die Überprüfung, ob ein Kunde mit dem gleichen Namen eine Buchung durchführt. In dem Fall, dass es so ist, soll ja keine neue Kundennummer erstellt werden
 

Javinner

Top Contributor
Nur habe ich da das Problem, dass ich wirklich keine Ahnung habe, wie ich die Buslinien nach ihrer Busnummer aufsteigend sortieren kann
Coparator<Object>, Comparable<Object>, Collections
Java:
public class HowToSortByRequirementDemo
{

 
    public static void main(String[] args) throws FileNotFoundException
    {
        Scanner scanner = new Scanner(new File("woman.txt"));
        List<String> list = new ArrayList<>();
        while(scanner.hasNextLine())
        {
            list.add(scanner.nextLine());
        }
       
       
        List<Being> beingList = new ArrayList<>();
        Random random = new Random();
        int width = 1000;
        int arm;
        int leg;
        int eye;
        int indexForName;
        String name;
        int loop = 100;
        while(loop > 0)
        {
            arm = random.nextInt(width);
            leg = random.nextInt(width);
            eye = random.nextInt(width);
            indexForName = random.nextInt(list.size());
            name = list.get(indexForName);
            beingList.add(new Being(arm, leg, eye, name));
            loop--;
        }
       
        Collections.sort(beingList, new CompareByArm());
        pring(beingList);
        System.out.println(" - - - - - - - - - - - ");
        Collections.sort(beingList, new CompareByLeg());
        pring(beingList);
        System.out.println(" - - - - - - - - - - - ");
        Collections.sort(beingList, new CompareByEye());
        pring(beingList);
       
    }
   
    public static void pring(List<Being> list)
    {
        list.forEach((b) ->
        {
            System.out.println(String.format(Locale.GERMAN, "Arm: %d, Leg: %d, Eye: %d, Name: %s%n", b.getArm(), b.getLeg(), b.getEye(), b.getName()));
        });
    }
   
}

public class Being
{

    private final int arm;
    private final int leg;
    private final int eye;
    private final String name;

    public Being(int arm, int leg, int eye, String name)
    {
        this.arm = arm;
        this.leg = leg;
        this.eye = eye;
        this.name = name;
    }

    public int getArm()
    {
        return arm;
    }

    public int getLeg()
    {
        return leg;
    }

    public int getEye()
    {
        return eye;
    }

    public String getName()
    {
        return name;
    }

}

public class CompareByArm implements Comparator<Being>
{

    @Override
    public int compare(Being o1, Being o2)
    {
        return Integer.compare(o1.getArm(), o2.getArm());
    }

}

public class CompareByEye implements Comparator<Being>
{

    @Override
    public int compare(Being o1, Being o2)
    {
        return Integer.compare(o1.getEye(), o2.getEye());
    }

}

public class CompareByLeg implements Comparator<Being>
{

    @Override
    public int compare(Being o1, Being o2)
    {
        return Integer.compare(o1.getLeg(), o2.getLeg());
    }
}

/** Output */
Arm: 1, Leg: 845, Eye: 309, Name: Luna

Arm: 3, Leg: 536, Eye: 403, Name: Lily

Arm: 4, Leg: 563, Eye: 656, Name: Scarlett

Arm: 5, Leg: 394, Eye: 214, Name: Esme

Arm: 6, Leg: 472, Eye: 383, Name: Rose

Arm: 20, Leg: 498, Eye: 238, Name: Eliza

Arm: 20, Leg: 987, Eye: 419, Name: Isabelle

Arm: 24, Leg: 557, Eye: 883, Name: Jessica

Arm: 24, Leg: 887, Eye: 490, Name: Harper

Arm: 47, Leg: 882, Eye: 456, Name: Annabelle

Arm: 58, Leg: 797, Eye: 167, Name: Scarlett

Arm: 61, Leg: 742, Eye: 335, Name: Ella

Arm: 82, Leg: 961, Eye: 457, Name: Aria

Arm: 88, Leg: 633, Eye: 572, Name: Poppy

Arm: 90, Leg: 547, Eye: 325, Name: Darcy

Arm: 95, Leg: 978, Eye: 697, Name: Darcy

Arm: 105, Leg: 904, Eye: 860, Name: Arabella

Arm: 134, Leg: 389, Eye: 508, Name: Isla

Arm: 147, Leg: 486, Eye: 703, Name: Megan

Arm: 150, Leg: 110, Eye: 0, Name: Rose

Arm: 174, Leg: 439, Eye: 523, Name: Emilia

Arm: 176, Leg: 829, Eye: 203, Name: Freya

Arm: 187, Leg: 769, Eye: 268, Name: Ruby

Arm: 188, Leg: 120, Eye: 953, Name: Esme

Arm: 215, Leg: 744, Eye: 698, Name: Alice

Arm: 223, Leg: 241, Eye: 207, Name: Ivy

Arm: 241, Leg: 45, Eye: 58, Name: Mia

Arm: 243, Leg: 512, Eye: 964, Name: Lily

Arm: 247, Leg: 622, Eye: 615, Name: Florence

Arm: 248, Leg: 363, Eye: 470, Name: Maddison

Arm: 264, Leg: 229, Eye: 468, Name: Molly

Arm: 269, Leg: 621, Eye: 21, Name: Willow

Arm: 271, Leg: 563, Eye: 282, Name: Darcy

Arm: 276, Leg: 341, Eye: 591, Name: Layla

Arm: 321, Leg: 237, Eye: 229, Name: Emily

Arm: 343, Leg: 300, Eye: 914, Name: Florence

Arm: 347, Leg: 455, Eye: 123, Name: Aisha

Arm: 348, Leg: 602, Eye: 881, Name: Jessica

Arm: 356, Leg: 561, Eye: 442, Name: Mila

Arm: 356, Leg: 303, Eye: 637, Name: Erin

Arm: 372, Leg: 855, Eye: 180, Name: Lola

Arm: 374, Leg: 415, Eye: 867, Name: Maria

Arm: 383, Leg: 642, Eye: 389, Name: Rose

Arm: 385, Leg: 756, Eye: 294, Name: Gracie

Arm: 389, Leg: 164, Eye: 754, Name: Phoebe

Arm: 411, Leg: 594, Eye: 21, Name: Maya

Arm: 412, Leg: 118, Eye: 968, Name: Nancy

Arm: 437, Leg: 29, Eye: 809, Name: Lucy

Arm: 445, Leg: 203, Eye: 468, Name: Sofia

Arm: 468, Leg: 407, Eye: 820, Name: Maisie

Arm: 473, Leg: 684, Eye: 830, Name: Lucy

Arm: 475, Leg: 749, Eye: 363, Name: Sophie

Arm: 492, Leg: 824, Eye: 540, Name: Willow

Arm: 511, Leg: 768, Eye: 785, Name: Freya

Arm: 527, Leg: 281, Eye: 502, Name: Harper

Arm: 528, Leg: 925, Eye: 231, Name: Daisy

Arm: 529, Leg: 16, Eye: 727, Name: Harriet

Arm: 537, Leg: 761, Eye: 109, Name: Grace

Arm: 540, Leg: 442, Eye: 447, Name: Francesca

Arm: 555, Leg: 135, Eye: 439, Name: Holly

Arm: 563, Leg: 570, Eye: 787, Name: Jessica

Arm: 566, Leg: 153, Eye: 324, Name: Georgia

Arm: 577, Leg: 709, Eye: 852, Name: Darcy

Arm: 581, Leg: 410, Eye: 820, Name: Violet

Arm: 596, Leg: 144, Eye: 792, Name: Zara

Arm: 602, Leg: 706, Eye: 176, Name: Violet

Arm: 636, Leg: 398, Eye: 167, Name: Mia

Arm: 643, Leg: 198, Eye: 212, Name: Lily

Arm: 646, Leg: 582, Eye: 170, Name: Francesca

Arm: 660, Leg: 772, Eye: 726, Name: Luna

Arm: 660, Leg: 25, Eye: 524, Name: Annabelle

Arm: 661, Leg: 279, Eye: 345, Name: Julia

Arm: 662, Leg: 566, Eye: 805, Name: Lilly

Arm: 664, Leg: 789, Eye: 696, Name: Ellie

Arm: 671, Leg: 641, Eye: 531, Name: Thea

Arm: 678, Leg: 144, Eye: 436, Name: Sophie

Arm: 680, Leg: 305, Eye: 338, Name: Bella

Arm: 721, Leg: 595, Eye: 319, Name: Isabelle

Arm: 723, Leg: 632, Eye: 395, Name: Ivy

Arm: 778, Leg: 823, Eye: 619, Name: Sophia

Arm: 779, Leg: 163, Eye: 363, Name: Gracie

Arm: 779, Leg: 678, Eye: 891, Name: Charlotte

Arm: 792, Leg: 324, Eye: 58, Name: Nancy

Arm: 798, Leg: 75, Eye: 622, Name: Florence

Arm: 805, Leg: 888, Eye: 221, Name: Martha

Arm: 820, Leg: 713, Eye: 39, Name: Victoria

Arm: 826, Leg: 671, Eye: 20, Name: Lucy

Arm: 843, Leg: 450, Eye: 447, Name: Ivy

Arm: 849, Leg: 630, Eye: 712, Name: Emilia

Arm: 857, Leg: 202, Eye: 691, Name: Felicity

Arm: 864, Leg: 60, Eye: 800, Name: Emily

Arm: 867, Leg: 808, Eye: 735, Name: Sara

Arm: 926, Leg: 231, Eye: 184, Name: Isla

Arm: 930, Leg: 794, Eye: 88, Name: Charlotte

Arm: 934, Leg: 971, Eye: 359, Name: Eva

Arm: 934, Leg: 263, Eye: 419, Name: Emily

Arm: 935, Leg: 226, Eye: 629, Name: Sienna

Arm: 938, Leg: 905, Eye: 642, Name: Luna

Arm: 966, Leg: 913, Eye: 892, Name: Maya

Arm: 987, Leg: 668, Eye: 535, Name: Hannah

- - - - - - - - - - -
Arm: 529, Leg: 16, Eye: 727, Name: Harriet

Arm: 660, Leg: 25, Eye: 524, Name: Annabelle

Arm: 437, Leg: 29, Eye: 809, Name: Lucy

Arm: 241, Leg: 45, Eye: 58, Name: Mia

Arm: 864, Leg: 60, Eye: 800, Name: Emily

Arm: 798, Leg: 75, Eye: 622, Name: Florence

Arm: 150, Leg: 110, Eye: 0, Name: Rose

Arm: 412, Leg: 118, Eye: 968, Name: Nancy

Arm: 188, Leg: 120, Eye: 953, Name: Esme

Arm: 555, Leg: 135, Eye: 439, Name: Holly

Arm: 596, Leg: 144, Eye: 792, Name: Zara

Arm: 678, Leg: 144, Eye: 436, Name: Sophie

Arm: 566, Leg: 153, Eye: 324, Name: Georgia

Arm: 779, Leg: 163, Eye: 363, Name: Gracie

Arm: 389, Leg: 164, Eye: 754, Name: Phoebe

Arm: 643, Leg: 198, Eye: 212, Name: Lily

Arm: 857, Leg: 202, Eye: 691, Name: Felicity

Arm: 445, Leg: 203, Eye: 468, Name: Sofia

Arm: 935, Leg: 226, Eye: 629, Name: Sienna

Arm: 264, Leg: 229, Eye: 468, Name: Molly

Arm: 926, Leg: 231, Eye: 184, Name: Isla

Arm: 321, Leg: 237, Eye: 229, Name: Emily

Arm: 223, Leg: 241, Eye: 207, Name: Ivy

Arm: 934, Leg: 263, Eye: 419, Name: Emily

Arm: 661, Leg: 279, Eye: 345, Name: Julia

Arm: 527, Leg: 281, Eye: 502, Name: Harper

Arm: 343, Leg: 300, Eye: 914, Name: Florence

Arm: 356, Leg: 303, Eye: 637, Name: Erin

Arm: 680, Leg: 305, Eye: 338, Name: Bella

Arm: 792, Leg: 324, Eye: 58, Name: Nancy

Arm: 276, Leg: 341, Eye: 591, Name: Layla

Arm: 248, Leg: 363, Eye: 470, Name: Maddison

Arm: 134, Leg: 389, Eye: 508, Name: Isla

Arm: 5, Leg: 394, Eye: 214, Name: Esme

Arm: 636, Leg: 398, Eye: 167, Name: Mia

Arm: 468, Leg: 407, Eye: 820, Name: Maisie

Arm: 581, Leg: 410, Eye: 820, Name: Violet

Arm: 374, Leg: 415, Eye: 867, Name: Maria

Arm: 174, Leg: 439, Eye: 523, Name: Emilia

Arm: 540, Leg: 442, Eye: 447, Name: Francesca

Arm: 843, Leg: 450, Eye: 447, Name: Ivy

Arm: 347, Leg: 455, Eye: 123, Name: Aisha

Arm: 6, Leg: 472, Eye: 383, Name: Rose

Arm: 147, Leg: 486, Eye: 703, Name: Megan

Arm: 20, Leg: 498, Eye: 238, Name: Eliza

Arm: 243, Leg: 512, Eye: 964, Name: Lily

Arm: 3, Leg: 536, Eye: 403, Name: Lily

Arm: 90, Leg: 547, Eye: 325, Name: Darcy

Arm: 24, Leg: 557, Eye: 883, Name: Jessica

Arm: 356, Leg: 561, Eye: 442, Name: Mila

Arm: 4, Leg: 563, Eye: 656, Name: Scarlett

Arm: 271, Leg: 563, Eye: 282, Name: Darcy

Arm: 662, Leg: 566, Eye: 805, Name: Lilly

Arm: 563, Leg: 570, Eye: 787, Name: Jessica

Arm: 646, Leg: 582, Eye: 170, Name: Francesca

Arm: 411, Leg: 594, Eye: 21, Name: Maya

Arm: 721, Leg: 595, Eye: 319, Name: Isabelle

Arm: 348, Leg: 602, Eye: 881, Name: Jessica

Arm: 269, Leg: 621, Eye: 21, Name: Willow

Arm: 247, Leg: 622, Eye: 615, Name: Florence

Arm: 849, Leg: 630, Eye: 712, Name: Emilia

Arm: 723, Leg: 632, Eye: 395, Name: Ivy

Arm: 88, Leg: 633, Eye: 572, Name: Poppy

Arm: 671, Leg: 641, Eye: 531, Name: Thea

Arm: 383, Leg: 642, Eye: 389, Name: Rose

Arm: 987, Leg: 668, Eye: 535, Name: Hannah

Arm: 826, Leg: 671, Eye: 20, Name: Lucy

Arm: 779, Leg: 678, Eye: 891, Name: Charlotte

Arm: 473, Leg: 684, Eye: 830, Name: Lucy

Arm: 602, Leg: 706, Eye: 176, Name: Violet

Arm: 577, Leg: 709, Eye: 852, Name: Darcy

Arm: 820, Leg: 713, Eye: 39, Name: Victoria

Arm: 61, Leg: 742, Eye: 335, Name: Ella

Arm: 215, Leg: 744, Eye: 698, Name: Alice

Arm: 475, Leg: 749, Eye: 363, Name: Sophie

Arm: 385, Leg: 756, Eye: 294, Name: Gracie

Arm: 537, Leg: 761, Eye: 109, Name: Grace

Arm: 511, Leg: 768, Eye: 785, Name: Freya

Arm: 187, Leg: 769, Eye: 268, Name: Ruby

Arm: 660, Leg: 772, Eye: 726, Name: Luna

Arm: 664, Leg: 789, Eye: 696, Name: Ellie

Arm: 930, Leg: 794, Eye: 88, Name: Charlotte

Arm: 58, Leg: 797, Eye: 167, Name: Scarlett

Arm: 867, Leg: 808, Eye: 735, Name: Sara

Arm: 778, Leg: 823, Eye: 619, Name: Sophia

Arm: 492, Leg: 824, Eye: 540, Name: Willow

Arm: 176, Leg: 829, Eye: 203, Name: Freya

Arm: 1, Leg: 845, Eye: 309, Name: Luna

Arm: 372, Leg: 855, Eye: 180, Name: Lola

Arm: 47, Leg: 882, Eye: 456, Name: Annabelle

Arm: 24, Leg: 887, Eye: 490, Name: Harper

Arm: 805, Leg: 888, Eye: 221, Name: Martha

Arm: 105, Leg: 904, Eye: 860, Name: Arabella

Arm: 938, Leg: 905, Eye: 642, Name: Luna

Arm: 966, Leg: 913, Eye: 892, Name: Maya

Arm: 528, Leg: 925, Eye: 231, Name: Daisy

Arm: 82, Leg: 961, Eye: 457, Name: Aria

Arm: 934, Leg: 971, Eye: 359, Name: Eva

Arm: 95, Leg: 978, Eye: 697, Name: Darcy

Arm: 20, Leg: 987, Eye: 419, Name: Isabelle

- - - - - - - - - - -
Arm: 150, Leg: 110, Eye: 0, Name: Rose

Arm: 826, Leg: 671, Eye: 20, Name: Lucy

Arm: 411, Leg: 594, Eye: 21, Name: Maya

Arm: 269, Leg: 621, Eye: 21, Name: Willow

Arm: 820, Leg: 713, Eye: 39, Name: Victoria

Arm: 241, Leg: 45, Eye: 58, Name: Mia

Arm: 792, Leg: 324, Eye: 58, Name: Nancy

Arm: 930, Leg: 794, Eye: 88, Name: Charlotte

Arm: 537, Leg: 761, Eye: 109, Name: Grace

Arm: 347, Leg: 455, Eye: 123, Name: Aisha

Arm: 636, Leg: 398, Eye: 167, Name: Mia

Arm: 58, Leg: 797, Eye: 167, Name: Scarlett

Arm: 646, Leg: 582, Eye: 170, Name: Francesca

Arm: 602, Leg: 706, Eye: 176, Name: Violet

Arm: 372, Leg: 855, Eye: 180, Name: Lola

Arm: 926, Leg: 231, Eye: 184, Name: Isla

Arm: 176, Leg: 829, Eye: 203, Name: Freya

Arm: 223, Leg: 241, Eye: 207, Name: Ivy

Arm: 643, Leg: 198, Eye: 212, Name: Lily

Arm: 5, Leg: 394, Eye: 214, Name: Esme

Arm: 805, Leg: 888, Eye: 221, Name: Martha

Arm: 321, Leg: 237, Eye: 229, Name: Emily

Arm: 528, Leg: 925, Eye: 231, Name: Daisy

Arm: 20, Leg: 498, Eye: 238, Name: Eliza

Arm: 187, Leg: 769, Eye: 268, Name: Ruby

Arm: 271, Leg: 563, Eye: 282, Name: Darcy

Arm: 385, Leg: 756, Eye: 294, Name: Gracie

Arm: 1, Leg: 845, Eye: 309, Name: Luna

Arm: 721, Leg: 595, Eye: 319, Name: Isabelle

Arm: 566, Leg: 153, Eye: 324, Name: Georgia

Arm: 90, Leg: 547, Eye: 325, Name: Darcy

Arm: 61, Leg: 742, Eye: 335, Name: Ella

Arm: 680, Leg: 305, Eye: 338, Name: Bella

Arm: 661, Leg: 279, Eye: 345, Name: Julia

Arm: 934, Leg: 971, Eye: 359, Name: Eva

Arm: 779, Leg: 163, Eye: 363, Name: Gracie

Arm: 475, Leg: 749, Eye: 363, Name: Sophie

Arm: 6, Leg: 472, Eye: 383, Name: Rose

Arm: 383, Leg: 642, Eye: 389, Name: Rose

Arm: 723, Leg: 632, Eye: 395, Name: Ivy

Arm: 3, Leg: 536, Eye: 403, Name: Lily

Arm: 934, Leg: 263, Eye: 419, Name: Emily

Arm: 20, Leg: 987, Eye: 419, Name: Isabelle

Arm: 678, Leg: 144, Eye: 436, Name: Sophie

Arm: 555, Leg: 135, Eye: 439, Name: Holly

Arm: 356, Leg: 561, Eye: 442, Name: Mila

Arm: 540, Leg: 442, Eye: 447, Name: Francesca

Arm: 843, Leg: 450, Eye: 447, Name: Ivy

Arm: 47, Leg: 882, Eye: 456, Name: Annabelle

Arm: 82, Leg: 961, Eye: 457, Name: Aria

Arm: 445, Leg: 203, Eye: 468, Name: Sofia

Arm: 264, Leg: 229, Eye: 468, Name: Molly

Arm: 248, Leg: 363, Eye: 470, Name: Maddison

Arm: 24, Leg: 887, Eye: 490, Name: Harper

Arm: 527, Leg: 281, Eye: 502, Name: Harper

Arm: 134, Leg: 389, Eye: 508, Name: Isla

Arm: 174, Leg: 439, Eye: 523, Name: Emilia

Arm: 660, Leg: 25, Eye: 524, Name: Annabelle

Arm: 671, Leg: 641, Eye: 531, Name: Thea

Arm: 987, Leg: 668, Eye: 535, Name: Hannah

Arm: 492, Leg: 824, Eye: 540, Name: Willow

Arm: 88, Leg: 633, Eye: 572, Name: Poppy

Arm: 276, Leg: 341, Eye: 591, Name: Layla

Arm: 247, Leg: 622, Eye: 615, Name: Florence

Arm: 778, Leg: 823, Eye: 619, Name: Sophia

Arm: 798, Leg: 75, Eye: 622, Name: Florence

Arm: 935, Leg: 226, Eye: 629, Name: Sienna

Arm: 356, Leg: 303, Eye: 637, Name: Erin

Arm: 938, Leg: 905, Eye: 642, Name: Luna

Arm: 4, Leg: 563, Eye: 656, Name: Scarlett

Arm: 857, Leg: 202, Eye: 691, Name: Felicity

Arm: 664, Leg: 789, Eye: 696, Name: Ellie

Arm: 95, Leg: 978, Eye: 697, Name: Darcy

Arm: 215, Leg: 744, Eye: 698, Name: Alice

Arm: 147, Leg: 486, Eye: 703, Name: Megan

Arm: 849, Leg: 630, Eye: 712, Name: Emilia

Arm: 660, Leg: 772, Eye: 726, Name: Luna

Arm: 529, Leg: 16, Eye: 727, Name: Harriet

Arm: 867, Leg: 808, Eye: 735, Name: Sara

Arm: 389, Leg: 164, Eye: 754, Name: Phoebe

Arm: 511, Leg: 768, Eye: 785, Name: Freya

Arm: 563, Leg: 570, Eye: 787, Name: Jessica

Arm: 596, Leg: 144, Eye: 792, Name: Zara

Arm: 864, Leg: 60, Eye: 800, Name: Emily

Arm: 662, Leg: 566, Eye: 805, Name: Lilly

Arm: 437, Leg: 29, Eye: 809, Name: Lucy

Arm: 468, Leg: 407, Eye: 820, Name: Maisie

Arm: 581, Leg: 410, Eye: 820, Name: Violet

Arm: 473, Leg: 684, Eye: 830, Name: Lucy

Arm: 577, Leg: 709, Eye: 852, Name: Darcy

Arm: 105, Leg: 904, Eye: 860, Name: Arabella

Arm: 374, Leg: 415, Eye: 867, Name: Maria

Arm: 348, Leg: 602, Eye: 881, Name: Jessica

Arm: 24, Leg: 557, Eye: 883, Name: Jessica

Arm: 779, Leg: 678, Eye: 891, Name: Charlotte

Arm: 966, Leg: 913, Eye: 892, Name: Maya

Arm: 343, Leg: 300, Eye: 914, Name: Florence

Arm: 188, Leg: 120, Eye: 953, Name: Esme

Arm: 243, Leg: 512, Eye: 964, Name: Lily

Arm: 412, Leg: 118, Eye: 968, Name: Nancy

und jetzt fehlt mir immernoch die Überprüfung, ob ein Kunde mit dem gleichen Namen eine Buchung durchführt. In dem Fall, dass es so ist, soll ja keine neue Kundennummer erstellt werden
costumer.add(new Costumer(prename, postname)); Der Kostümier?!
Du hast doch eine List Customer, also prüfst du, ob der Kunde bereits vorhanden ist und erhöhst den jeweiligen Wert oder summierst neu entstandenen Kosten dazu usw.
 
Zuletzt bearbeitet:

xImJugo

Aktives Mitglied
Coparator<Object>, Comparable<Object>, Collections
Java:
public class HowToSortByRequirementDemo
{


    public static void main(String[] args) throws FileNotFoundException
    {
        Scanner scanner = new Scanner(new File("woman.txt"));
        List<String> list = new ArrayList<>();
        while(scanner.hasNextLine())
        {
            list.add(scanner.nextLine());
        }
      
      
        List<Being> beingList = new ArrayList<>();
        Random random = new Random();
        int width = 1000;
        int arm;
        int leg;
        int eye;
        int indexForName;
        String name;
        int loop = 100;
        while(loop > 0)
        {
            arm = random.nextInt(width);
            leg = random.nextInt(width);
            eye = random.nextInt(width);
            indexForName = random.nextInt(list.size());
            name = list.get(indexForName);
            beingList.add(new Being(arm, leg, eye, name));
            loop--;
        }
      
        Collections.sort(beingList, new CompareByArm());
        pring(beingList);
        System.out.println(" - - - - - - - - - - - ");
        Collections.sort(beingList, new CompareByLeg());
        pring(beingList);
        System.out.println(" - - - - - - - - - - - ");
        Collections.sort(beingList, new CompareByEye());
        pring(beingList);
      
    }
  
    public static void pring(List<Being> list)
    {
        list.forEach((b) ->
        {
            System.out.println(String.format(Locale.GERMAN, "Arm: %d, Leg: %d, Eye: %d, Name: %s%n", b.getArm(), b.getLeg(), b.getEye(), b.getName()));
        });
    }
  
}

public class Being
{

    private final int arm;
    private final int leg;
    private final int eye;
    private final String name;

    public Being(int arm, int leg, int eye, String name)
    {
        this.arm = arm;
        this.leg = leg;
        this.eye = eye;
        this.name = name;
    }

    public int getArm()
    {
        return arm;
    }

    public int getLeg()
    {
        return leg;
    }

    public int getEye()
    {
        return eye;
    }

    public String getName()
    {
        return name;
    }

}

public class CompareByArm implements Comparator<Being>
{

    @Override
    public int compare(Being o1, Being o2)
    {
        return Integer.compare(o1.getArm(), o2.getArm());
    }

}

public class CompareByEye implements Comparator<Being>
{

    @Override
    public int compare(Being o1, Being o2)
    {
        return Integer.compare(o1.getEye(), o2.getEye());
    }

}

public class CompareByLeg implements Comparator<Being>
{

    @Override
    public int compare(Being o1, Being o2)
    {
        return Integer.compare(o1.getLeg(), o2.getLeg());
    }
}

/** Output */
Arm: 1, Leg: 845, Eye: 309, Name: Luna

Arm: 3, Leg: 536, Eye: 403, Name: Lily

Arm: 4, Leg: 563, Eye: 656, Name: Scarlett

Arm: 5, Leg: 394, Eye: 214, Name: Esme

Arm: 6, Leg: 472, Eye: 383, Name: Rose

Arm: 20, Leg: 498, Eye: 238, Name: Eliza

Arm: 20, Leg: 987, Eye: 419, Name: Isabelle

Arm: 24, Leg: 557, Eye: 883, Name: Jessica

Arm: 24, Leg: 887, Eye: 490, Name: Harper

Arm: 47, Leg: 882, Eye: 456, Name: Annabelle

Arm: 58, Leg: 797, Eye: 167, Name: Scarlett

Arm: 61, Leg: 742, Eye: 335, Name: Ella

Arm: 82, Leg: 961, Eye: 457, Name: Aria

Arm: 88, Leg: 633, Eye: 572, Name: Poppy

Arm: 90, Leg: 547, Eye: 325, Name: Darcy

Arm: 95, Leg: 978, Eye: 697, Name: Darcy

Arm: 105, Leg: 904, Eye: 860, Name: Arabella

Arm: 134, Leg: 389, Eye: 508, Name: Isla

Arm: 147, Leg: 486, Eye: 703, Name: Megan

Arm: 150, Leg: 110, Eye: 0, Name: Rose

Arm: 174, Leg: 439, Eye: 523, Name: Emilia

Arm: 176, Leg: 829, Eye: 203, Name: Freya

Arm: 187, Leg: 769, Eye: 268, Name: Ruby

Arm: 188, Leg: 120, Eye: 953, Name: Esme

Arm: 215, Leg: 744, Eye: 698, Name: Alice

Arm: 223, Leg: 241, Eye: 207, Name: Ivy

Arm: 241, Leg: 45, Eye: 58, Name: Mia

Arm: 243, Leg: 512, Eye: 964, Name: Lily

Arm: 247, Leg: 622, Eye: 615, Name: Florence

Arm: 248, Leg: 363, Eye: 470, Name: Maddison

Arm: 264, Leg: 229, Eye: 468, Name: Molly

Arm: 269, Leg: 621, Eye: 21, Name: Willow

Arm: 271, Leg: 563, Eye: 282, Name: Darcy

Arm: 276, Leg: 341, Eye: 591, Name: Layla

Arm: 321, Leg: 237, Eye: 229, Name: Emily

Arm: 343, Leg: 300, Eye: 914, Name: Florence

Arm: 347, Leg: 455, Eye: 123, Name: Aisha

Arm: 348, Leg: 602, Eye: 881, Name: Jessica

Arm: 356, Leg: 561, Eye: 442, Name: Mila

Arm: 356, Leg: 303, Eye: 637, Name: Erin

Arm: 372, Leg: 855, Eye: 180, Name: Lola

Arm: 374, Leg: 415, Eye: 867, Name: Maria

Arm: 383, Leg: 642, Eye: 389, Name: Rose

Arm: 385, Leg: 756, Eye: 294, Name: Gracie

Arm: 389, Leg: 164, Eye: 754, Name: Phoebe

Arm: 411, Leg: 594, Eye: 21, Name: Maya

Arm: 412, Leg: 118, Eye: 968, Name: Nancy

Arm: 437, Leg: 29, Eye: 809, Name: Lucy

Arm: 445, Leg: 203, Eye: 468, Name: Sofia

Arm: 468, Leg: 407, Eye: 820, Name: Maisie

Arm: 473, Leg: 684, Eye: 830, Name: Lucy

Arm: 475, Leg: 749, Eye: 363, Name: Sophie

Arm: 492, Leg: 824, Eye: 540, Name: Willow

Arm: 511, Leg: 768, Eye: 785, Name: Freya

Arm: 527, Leg: 281, Eye: 502, Name: Harper

Arm: 528, Leg: 925, Eye: 231, Name: Daisy

Arm: 529, Leg: 16, Eye: 727, Name: Harriet

Arm: 537, Leg: 761, Eye: 109, Name: Grace

Arm: 540, Leg: 442, Eye: 447, Name: Francesca

Arm: 555, Leg: 135, Eye: 439, Name: Holly

Arm: 563, Leg: 570, Eye: 787, Name: Jessica

Arm: 566, Leg: 153, Eye: 324, Name: Georgia

Arm: 577, Leg: 709, Eye: 852, Name: Darcy

Arm: 581, Leg: 410, Eye: 820, Name: Violet

Arm: 596, Leg: 144, Eye: 792, Name: Zara

Arm: 602, Leg: 706, Eye: 176, Name: Violet

Arm: 636, Leg: 398, Eye: 167, Name: Mia

Arm: 643, Leg: 198, Eye: 212, Name: Lily

Arm: 646, Leg: 582, Eye: 170, Name: Francesca

Arm: 660, Leg: 772, Eye: 726, Name: Luna

Arm: 660, Leg: 25, Eye: 524, Name: Annabelle

Arm: 661, Leg: 279, Eye: 345, Name: Julia

Arm: 662, Leg: 566, Eye: 805, Name: Lilly

Arm: 664, Leg: 789, Eye: 696, Name: Ellie

Arm: 671, Leg: 641, Eye: 531, Name: Thea

Arm: 678, Leg: 144, Eye: 436, Name: Sophie

Arm: 680, Leg: 305, Eye: 338, Name: Bella

Arm: 721, Leg: 595, Eye: 319, Name: Isabelle

Arm: 723, Leg: 632, Eye: 395, Name: Ivy

Arm: 778, Leg: 823, Eye: 619, Name: Sophia

Arm: 779, Leg: 163, Eye: 363, Name: Gracie

Arm: 779, Leg: 678, Eye: 891, Name: Charlotte

Arm: 792, Leg: 324, Eye: 58, Name: Nancy

Arm: 798, Leg: 75, Eye: 622, Name: Florence

Arm: 805, Leg: 888, Eye: 221, Name: Martha

Arm: 820, Leg: 713, Eye: 39, Name: Victoria

Arm: 826, Leg: 671, Eye: 20, Name: Lucy

Arm: 843, Leg: 450, Eye: 447, Name: Ivy

Arm: 849, Leg: 630, Eye: 712, Name: Emilia

Arm: 857, Leg: 202, Eye: 691, Name: Felicity

Arm: 864, Leg: 60, Eye: 800, Name: Emily

Arm: 867, Leg: 808, Eye: 735, Name: Sara

Arm: 926, Leg: 231, Eye: 184, Name: Isla

Arm: 930, Leg: 794, Eye: 88, Name: Charlotte

Arm: 934, Leg: 971, Eye: 359, Name: Eva

Arm: 934, Leg: 263, Eye: 419, Name: Emily

Arm: 935, Leg: 226, Eye: 629, Name: Sienna

Arm: 938, Leg: 905, Eye: 642, Name: Luna

Arm: 966, Leg: 913, Eye: 892, Name: Maya

Arm: 987, Leg: 668, Eye: 535, Name: Hannah

- - - - - - - - - - -
Arm: 529, Leg: 16, Eye: 727, Name: Harriet

Arm: 660, Leg: 25, Eye: 524, Name: Annabelle

Arm: 437, Leg: 29, Eye: 809, Name: Lucy

Arm: 241, Leg: 45, Eye: 58, Name: Mia

Arm: 864, Leg: 60, Eye: 800, Name: Emily

Arm: 798, Leg: 75, Eye: 622, Name: Florence

Arm: 150, Leg: 110, Eye: 0, Name: Rose

Arm: 412, Leg: 118, Eye: 968, Name: Nancy

Arm: 188, Leg: 120, Eye: 953, Name: Esme

Arm: 555, Leg: 135, Eye: 439, Name: Holly

Arm: 596, Leg: 144, Eye: 792, Name: Zara

Arm: 678, Leg: 144, Eye: 436, Name: Sophie

Arm: 566, Leg: 153, Eye: 324, Name: Georgia

Arm: 779, Leg: 163, Eye: 363, Name: Gracie

Arm: 389, Leg: 164, Eye: 754, Name: Phoebe

Arm: 643, Leg: 198, Eye: 212, Name: Lily

Arm: 857, Leg: 202, Eye: 691, Name: Felicity

Arm: 445, Leg: 203, Eye: 468, Name: Sofia

Arm: 935, Leg: 226, Eye: 629, Name: Sienna

Arm: 264, Leg: 229, Eye: 468, Name: Molly

Arm: 926, Leg: 231, Eye: 184, Name: Isla

Arm: 321, Leg: 237, Eye: 229, Name: Emily

Arm: 223, Leg: 241, Eye: 207, Name: Ivy

Arm: 934, Leg: 263, Eye: 419, Name: Emily

Arm: 661, Leg: 279, Eye: 345, Name: Julia

Arm: 527, Leg: 281, Eye: 502, Name: Harper

Arm: 343, Leg: 300, Eye: 914, Name: Florence

Arm: 356, Leg: 303, Eye: 637, Name: Erin

Arm: 680, Leg: 305, Eye: 338, Name: Bella

Arm: 792, Leg: 324, Eye: 58, Name: Nancy

Arm: 276, Leg: 341, Eye: 591, Name: Layla

Arm: 248, Leg: 363, Eye: 470, Name: Maddison

Arm: 134, Leg: 389, Eye: 508, Name: Isla

Arm: 5, Leg: 394, Eye: 214, Name: Esme

Arm: 636, Leg: 398, Eye: 167, Name: Mia

Arm: 468, Leg: 407, Eye: 820, Name: Maisie

Arm: 581, Leg: 410, Eye: 820, Name: Violet

Arm: 374, Leg: 415, Eye: 867, Name: Maria

Arm: 174, Leg: 439, Eye: 523, Name: Emilia

Arm: 540, Leg: 442, Eye: 447, Name: Francesca

Arm: 843, Leg: 450, Eye: 447, Name: Ivy

Arm: 347, Leg: 455, Eye: 123, Name: Aisha

Arm: 6, Leg: 472, Eye: 383, Name: Rose

Arm: 147, Leg: 486, Eye: 703, Name: Megan

Arm: 20, Leg: 498, Eye: 238, Name: Eliza

Arm: 243, Leg: 512, Eye: 964, Name: Lily

Arm: 3, Leg: 536, Eye: 403, Name: Lily

Arm: 90, Leg: 547, Eye: 325, Name: Darcy

Arm: 24, Leg: 557, Eye: 883, Name: Jessica

Arm: 356, Leg: 561, Eye: 442, Name: Mila

Arm: 4, Leg: 563, Eye: 656, Name: Scarlett

Arm: 271, Leg: 563, Eye: 282, Name: Darcy

Arm: 662, Leg: 566, Eye: 805, Name: Lilly

Arm: 563, Leg: 570, Eye: 787, Name: Jessica

Arm: 646, Leg: 582, Eye: 170, Name: Francesca

Arm: 411, Leg: 594, Eye: 21, Name: Maya

Arm: 721, Leg: 595, Eye: 319, Name: Isabelle

Arm: 348, Leg: 602, Eye: 881, Name: Jessica

Arm: 269, Leg: 621, Eye: 21, Name: Willow

Arm: 247, Leg: 622, Eye: 615, Name: Florence

Arm: 849, Leg: 630, Eye: 712, Name: Emilia

Arm: 723, Leg: 632, Eye: 395, Name: Ivy

Arm: 88, Leg: 633, Eye: 572, Name: Poppy

Arm: 671, Leg: 641, Eye: 531, Name: Thea

Arm: 383, Leg: 642, Eye: 389, Name: Rose

Arm: 987, Leg: 668, Eye: 535, Name: Hannah

Arm: 826, Leg: 671, Eye: 20, Name: Lucy

Arm: 779, Leg: 678, Eye: 891, Name: Charlotte

Arm: 473, Leg: 684, Eye: 830, Name: Lucy

Arm: 602, Leg: 706, Eye: 176, Name: Violet

Arm: 577, Leg: 709, Eye: 852, Name: Darcy

Arm: 820, Leg: 713, Eye: 39, Name: Victoria

Arm: 61, Leg: 742, Eye: 335, Name: Ella

Arm: 215, Leg: 744, Eye: 698, Name: Alice

Arm: 475, Leg: 749, Eye: 363, Name: Sophie

Arm: 385, Leg: 756, Eye: 294, Name: Gracie

Arm: 537, Leg: 761, Eye: 109, Name: Grace

Arm: 511, Leg: 768, Eye: 785, Name: Freya

Arm: 187, Leg: 769, Eye: 268, Name: Ruby

Arm: 660, Leg: 772, Eye: 726, Name: Luna

Arm: 664, Leg: 789, Eye: 696, Name: Ellie

Arm: 930, Leg: 794, Eye: 88, Name: Charlotte

Arm: 58, Leg: 797, Eye: 167, Name: Scarlett

Arm: 867, Leg: 808, Eye: 735, Name: Sara

Arm: 778, Leg: 823, Eye: 619, Name: Sophia

Arm: 492, Leg: 824, Eye: 540, Name: Willow

Arm: 176, Leg: 829, Eye: 203, Name: Freya

Arm: 1, Leg: 845, Eye: 309, Name: Luna

Arm: 372, Leg: 855, Eye: 180, Name: Lola

Arm: 47, Leg: 882, Eye: 456, Name: Annabelle

Arm: 24, Leg: 887, Eye: 490, Name: Harper

Arm: 805, Leg: 888, Eye: 221, Name: Martha

Arm: 105, Leg: 904, Eye: 860, Name: Arabella

Arm: 938, Leg: 905, Eye: 642, Name: Luna

Arm: 966, Leg: 913, Eye: 892, Name: Maya

Arm: 528, Leg: 925, Eye: 231, Name: Daisy

Arm: 82, Leg: 961, Eye: 457, Name: Aria

Arm: 934, Leg: 971, Eye: 359, Name: Eva

Arm: 95, Leg: 978, Eye: 697, Name: Darcy

Arm: 20, Leg: 987, Eye: 419, Name: Isabelle

- - - - - - - - - - -
Arm: 150, Leg: 110, Eye: 0, Name: Rose

Arm: 826, Leg: 671, Eye: 20, Name: Lucy

Arm: 411, Leg: 594, Eye: 21, Name: Maya

Arm: 269, Leg: 621, Eye: 21, Name: Willow

Arm: 820, Leg: 713, Eye: 39, Name: Victoria

Arm: 241, Leg: 45, Eye: 58, Name: Mia

Arm: 792, Leg: 324, Eye: 58, Name: Nancy

Arm: 930, Leg: 794, Eye: 88, Name: Charlotte

Arm: 537, Leg: 761, Eye: 109, Name: Grace

Arm: 347, Leg: 455, Eye: 123, Name: Aisha

Arm: 636, Leg: 398, Eye: 167, Name: Mia

Arm: 58, Leg: 797, Eye: 167, Name: Scarlett

Arm: 646, Leg: 582, Eye: 170, Name: Francesca

Arm: 602, Leg: 706, Eye: 176, Name: Violet

Arm: 372, Leg: 855, Eye: 180, Name: Lola

Arm: 926, Leg: 231, Eye: 184, Name: Isla

Arm: 176, Leg: 829, Eye: 203, Name: Freya

Arm: 223, Leg: 241, Eye: 207, Name: Ivy

Arm: 643, Leg: 198, Eye: 212, Name: Lily

Arm: 5, Leg: 394, Eye: 214, Name: Esme

Arm: 805, Leg: 888, Eye: 221, Name: Martha

Arm: 321, Leg: 237, Eye: 229, Name: Emily

Arm: 528, Leg: 925, Eye: 231, Name: Daisy

Arm: 20, Leg: 498, Eye: 238, Name: Eliza

Arm: 187, Leg: 769, Eye: 268, Name: Ruby

Arm: 271, Leg: 563, Eye: 282, Name: Darcy

Arm: 385, Leg: 756, Eye: 294, Name: Gracie

Arm: 1, Leg: 845, Eye: 309, Name: Luna

Arm: 721, Leg: 595, Eye: 319, Name: Isabelle

Arm: 566, Leg: 153, Eye: 324, Name: Georgia

Arm: 90, Leg: 547, Eye: 325, Name: Darcy

Arm: 61, Leg: 742, Eye: 335, Name: Ella

Arm: 680, Leg: 305, Eye: 338, Name: Bella

Arm: 661, Leg: 279, Eye: 345, Name: Julia

Arm: 934, Leg: 971, Eye: 359, Name: Eva

Arm: 779, Leg: 163, Eye: 363, Name: Gracie

Arm: 475, Leg: 749, Eye: 363, Name: Sophie

Arm: 6, Leg: 472, Eye: 383, Name: Rose

Arm: 383, Leg: 642, Eye: 389, Name: Rose

Arm: 723, Leg: 632, Eye: 395, Name: Ivy

Arm: 3, Leg: 536, Eye: 403, Name: Lily

Arm: 934, Leg: 263, Eye: 419, Name: Emily

Arm: 20, Leg: 987, Eye: 419, Name: Isabelle

Arm: 678, Leg: 144, Eye: 436, Name: Sophie

Arm: 555, Leg: 135, Eye: 439, Name: Holly

Arm: 356, Leg: 561, Eye: 442, Name: Mila

Arm: 540, Leg: 442, Eye: 447, Name: Francesca

Arm: 843, Leg: 450, Eye: 447, Name: Ivy

Arm: 47, Leg: 882, Eye: 456, Name: Annabelle

Arm: 82, Leg: 961, Eye: 457, Name: Aria

Arm: 445, Leg: 203, Eye: 468, Name: Sofia

Arm: 264, Leg: 229, Eye: 468, Name: Molly

Arm: 248, Leg: 363, Eye: 470, Name: Maddison

Arm: 24, Leg: 887, Eye: 490, Name: Harper

Arm: 527, Leg: 281, Eye: 502, Name: Harper

Arm: 134, Leg: 389, Eye: 508, Name: Isla

Arm: 174, Leg: 439, Eye: 523, Name: Emilia

Arm: 660, Leg: 25, Eye: 524, Name: Annabelle

Arm: 671, Leg: 641, Eye: 531, Name: Thea

Arm: 987, Leg: 668, Eye: 535, Name: Hannah

Arm: 492, Leg: 824, Eye: 540, Name: Willow

Arm: 88, Leg: 633, Eye: 572, Name: Poppy

Arm: 276, Leg: 341, Eye: 591, Name: Layla

Arm: 247, Leg: 622, Eye: 615, Name: Florence

Arm: 778, Leg: 823, Eye: 619, Name: Sophia

Arm: 798, Leg: 75, Eye: 622, Name: Florence

Arm: 935, Leg: 226, Eye: 629, Name: Sienna

Arm: 356, Leg: 303, Eye: 637, Name: Erin

Arm: 938, Leg: 905, Eye: 642, Name: Luna

Arm: 4, Leg: 563, Eye: 656, Name: Scarlett

Arm: 857, Leg: 202, Eye: 691, Name: Felicity

Arm: 664, Leg: 789, Eye: 696, Name: Ellie

Arm: 95, Leg: 978, Eye: 697, Name: Darcy

Arm: 215, Leg: 744, Eye: 698, Name: Alice

Arm: 147, Leg: 486, Eye: 703, Name: Megan

Arm: 849, Leg: 630, Eye: 712, Name: Emilia

Arm: 660, Leg: 772, Eye: 726, Name: Luna

Arm: 529, Leg: 16, Eye: 727, Name: Harriet

Arm: 867, Leg: 808, Eye: 735, Name: Sara

Arm: 389, Leg: 164, Eye: 754, Name: Phoebe

Arm: 511, Leg: 768, Eye: 785, Name: Freya

Arm: 563, Leg: 570, Eye: 787, Name: Jessica

Arm: 596, Leg: 144, Eye: 792, Name: Zara

Arm: 864, Leg: 60, Eye: 800, Name: Emily

Arm: 662, Leg: 566, Eye: 805, Name: Lilly

Arm: 437, Leg: 29, Eye: 809, Name: Lucy

Arm: 468, Leg: 407, Eye: 820, Name: Maisie

Arm: 581, Leg: 410, Eye: 820, Name: Violet

Arm: 473, Leg: 684, Eye: 830, Name: Lucy

Arm: 577, Leg: 709, Eye: 852, Name: Darcy

Arm: 105, Leg: 904, Eye: 860, Name: Arabella

Arm: 374, Leg: 415, Eye: 867, Name: Maria

Arm: 348, Leg: 602, Eye: 881, Name: Jessica

Arm: 24, Leg: 557, Eye: 883, Name: Jessica

Arm: 779, Leg: 678, Eye: 891, Name: Charlotte

Arm: 966, Leg: 913, Eye: 892, Name: Maya

Arm: 343, Leg: 300, Eye: 914, Name: Florence

Arm: 188, Leg: 120, Eye: 953, Name: Esme

Arm: 243, Leg: 512, Eye: 964, Name: Lily

Arm: 412, Leg: 118, Eye: 968, Name: Nancy


costumer.add(new Costumer(prename, postname)); Der Kostümier?!
Du hast doch eine List Customer, also prüfst du, ob der Kunde bereits vorhanden ist und erhöhst den jeweiligen Wert oder summierst neu entstandenen Kosten dazu usw.

Okey danke, das Sortieren problem hat sich geklärt. Mein Fehler war, dass ich den Comparator nicht richtig erstellt habe für meine Anwendung.

Aber zum Thema book Befehl verzweifle ich immernoch . Das hab ich bisher :
Java:
public void book(int busnumber, String prename, String postname) {
        for (int i = 0; i < busline.size(); i++) {
            if (busline.get(i).getBusNumber() == busnumber) {
                costumer.add(new Costumer(prename, postname));
                //Terminal.printLine("OK");
            }
        }
        for (int i = 0; i < costumer.size(); i++) {
            String s = String.format("%s;%s", costumer.get(i).getBillNumber(), costumer.get(i).getCostumerNumber());
            Terminal.printLine(s);
        }
    }

Bis zum Code, wo die BusLinie bzw Busnummer überprüft wird ist ja alles schön und gut. Wenn es eine Buslinie mit entsprechender Busnummer gibt, wird wie im Code zu sehen ein costumer erstellt. Im Konstruktor des costumers selbst hab ich 2 methoden zusätzlich noch drinnen, die automatisch eine Kundennummer und Rechnungsnummer erstellen(Ist das sinnvoll?). Aufjeden Fall wenn es die Buslinie gibt, wird ein Costumer erstellt aber es soll noch die entsprechende Rechnungsnummer und Kundennummer im Format <Rechnungsnummer>;<Kundennummer> ausgegeben werden, wenn die book methode aufgerufen wird. Wieso doppelt sich bei mir die Ausgabe immer oder was muss ich ändern ?
Ausgabe (bei 3 Buchungen) sieht so aus bei mir :
1;1
1;1
2;2
1;1
2;2
3;3
 

mihe7

Top Contributor
Äh, bei der ersten Buchung wird mit Deiner Schleife ein Kunde und eine Rechnungsnummer ausgegeben. Bei der zweiten Buchung sind bereits zwei Kunden und zwei Rechnungsnummern vorhanden. Bei der dritten Buchung werden drei Kunden und drei Rechnungsnummern ausgegeben. Macht insgesamt: 1 + 2 + 3 = 6 Zeilen.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Z vereinfachtes Wörterbuch in java modellieren Java Basics - Anfänger-Themen 10
Z Modellieren Haareschneiden Java Basics - Anfänger-Themen 87
D n-dimensionale Points modellieren Java Basics - Anfänger-Themen 3
K Problem mit Greenfoot - aussetzen modellieren? Java Basics - Anfänger-Themen 2
M Länge eines Arrays als Variable speichern möglich? Java Basics - Anfänger-Themen 14
P Objekt einer Methode eines anderen Objektes übergeben Java Basics - Anfänger-Themen 5
P Wie kann ich beispielsweise Speicherstände eines Spiels DAUERHAFT in meinem Programm speichern? Java Basics - Anfänger-Themen 3
laxla123 Eigenschaften eines Algorithmus (determiniert vs.. deterministisch) Java Basics - Anfänger-Themen 2
monsterherz Ablauf der Erstellung eines Java Programmes Java Basics - Anfänger-Themen 17
monsterherz Fehler Semikolon fehlt - ich weiss aber nicht wo da noch eines hin sollte... Java Basics - Anfänger-Themen 21
J Farbe des Striches eines TitledBorders ändern Java Basics - Anfänger-Themen 2
pc pc pc pc pc letztes Element eines Arrays n Java Basics - Anfänger-Themen 3
walid Öffnungszeiten eines Geschäftes Java Basics - Anfänger-Themen 3
paulen1 Best Practice "Unchecked Assignment" Warnung beim erstellen eines 2D Arrays of Arraylists Java Basics - Anfänger-Themen 2
T Probleme beim Import eines Git-Repos Java Basics - Anfänger-Themen 2
U Eigenschaft eines JTextfiels per ActionListener ändern... Java Basics - Anfänger-Themen 2
B Synchronisation eines kleinen Museums Java Basics - Anfänger-Themen 47
krgewb Breite und Höhe eines Bildes in base64 auslesen Java Basics - Anfänger-Themen 3
Sachinbhatt Was ist die Notwendigkeit eines Sammlungsframeworks in Java? Java Basics - Anfänger-Themen 2
N Textdatei aus Resourcen-Ordner eines Projekts/ jar-file lesen Java Basics - Anfänger-Themen 4
B Produkt eines double - streams Java Basics - Anfänger-Themen 3
B Attribute eines Objekts einer Klasse durch statische Methode einer 2. Klasse ändern? Java Basics - Anfänger-Themen 32
S Variablen Letzte Zeile eines Strings entfernen Java Basics - Anfänger-Themen 1
D Inhalt eines Arrays ausgeben Java Basics - Anfänger-Themen 7
A Jedes zweite Element eines Arrays entfernen Java Basics - Anfänger-Themen 30
sserio Java Fx, wie erstellt man einen EventHandler, der durch das Drücken eines Button Texte in eine Table view einfügt Java Basics - Anfänger-Themen 17
J Größe eines Strings in Pixel Java Basics - Anfänger-Themen 18
M Parse-Tree eines statements darstellen Java Basics - Anfänger-Themen 0
H Java verkettete Liste, Wert eines Index zurückgeben Java Basics - Anfänger-Themen 1
bluetrix Programmieren eines Bots für Zahlen-Brettspiel Java Basics - Anfänger-Themen 9
J Hinzufügen eines Objektes in ein Objekt-Array Java Basics - Anfänger-Themen 62
M Wie kann die Implementation einer Methode den Wert eines Attributs vermindern? Java Basics - Anfänger-Themen 3
A Rekursive Implementation eines Codes Java Basics - Anfänger-Themen 4
H String Repräsentation eines Rechtecks mit Instanz-Methode Java Basics - Anfänger-Themen 8
M Konstruktor ohne Übergabe eines Wertes Java Basics - Anfänger-Themen 7
M Wie kann ich in einem Konstruktor die Methode eines anderen Interfaces mit den jeweiligen Parametern aufrufen? Java Basics - Anfänger-Themen 8
M Wie erreiche ich das Vorwärtsgehen eines Roboters? Java Basics - Anfänger-Themen 2
M Wie erreiche ich es das Vorwärtsgehen eines Roboters? Java Basics - Anfänger-Themen 0
R While-Loop der die Einträge eines Arrays in umgekehrter Reihenfolge anzeigt Java Basics - Anfänger-Themen 3
A Optimierung eines Programms: Mergen der Dateien Java Basics - Anfänger-Themen 23
melisax Alle Möglichkeiten eines Wortes angeben Java Basics - Anfänger-Themen 3
A Java, verarbeitung eines xml-files Java Basics - Anfänger-Themen 2
C Fehler beim erstellen eines Objektes Java Basics - Anfänger-Themen 3
B Konkatenieren eines Strings und inkremtierenden Zahl zu einer INT Variablen Java Basics - Anfänger-Themen 7
F Initialisieren eines Web-Mp3 Players in Tabs durch "booleans" erst wenn Tab geöffnet wird ...? Java Basics - Anfänger-Themen 1
P Drei Zahlen eines Würfelspiels auswerten Java Basics - Anfänger-Themen 7
C Brauche Hilfe beim Schreiben eines Programmes :/ Java Basics - Anfänger-Themen 1
C initialisieren eines arrays richtiger Größe und mit geeignetem Datentyp Java Basics - Anfänger-Themen 26
C Überprüfen eines Programms auf Syntaxfehler Java Basics - Anfänger-Themen 3
S Wie kann ich den Bereich eines Integers begrenzen? Java Basics - Anfänger-Themen 2
nonickatall Grundsätzliches Verständnisproblem des Aufbaus eines Programms Java Basics - Anfänger-Themen 19
B Downgrade eines bestehenden Projektes Java Basics - Anfänger-Themen 5
amelie123456 Geschwindigkeit der Methode bewegeDich eines Objekts ändern Java Basics - Anfänger-Themen 2
D Hilfe beim Erzeugen eines Arrays NullPointerException wird ausgelöst Java Basics - Anfänger-Themen 11
J maximaler Wert eines Integers Java Basics - Anfänger-Themen 14
TimoN11 IntelliJ , Ausgabe von einem Quellcode in Eingabe eines Quellcodes Java Basics - Anfänger-Themen 1
Z Rückgabe eines Values in umgekehrte richtung Java Basics - Anfänger-Themen 5
L Methode zum invertieren eines Arrays Java Basics - Anfänger-Themen 7
B fragen zu Aufbau eines UML-Klassendiagramm Java Basics - Anfänger-Themen 1
eleonori Durchschnitt aller Werte eines Baums berechnen Java Basics - Anfänger-Themen 5
M Benutzereingabe eines Codes verbessern Java Basics - Anfänger-Themen 3
B Modulo-Operator anhand eines Beispieles erklären Java Basics - Anfänger-Themen 7
J Verschieben von Buchstaben in einem String um vorgegebene Anzahl von Zeichen innerhalb eines weiteren String Java Basics - Anfänger-Themen 12
F Auf Variablen eines Konstruktors zugreifen Java Basics - Anfänger-Themen 4
Kawastori Größe eines Arrays bestimmen Java Basics - Anfänger-Themen 13
Lena_2611 Vergleich von Array1 Index mit Array2 Wert und erzeugen eines neues Arrays Java Basics - Anfänger-Themen 8
A Teilarrays eines 2D-Arrays sortieren Java Basics - Anfänger-Themen 4
marcooooo Separator zwischen allen Zeichen eines Strings einfügen Java Basics - Anfänger-Themen 29
C Wie kann ich Versionen eines Projektes in Eclipse erstellen? Java Basics - Anfänger-Themen 3
yoskaem Text Color durch Klicken eines Buttons in anderer Activity ändern Java Basics - Anfänger-Themen 2
A Teilen eines Arrays Java Basics - Anfänger-Themen 5
DorFey Sortieren eines mehrdimensionalen Arrays Java Basics - Anfänger-Themen 8
P Klasse hat keinen Zugriff auf getter/setter-Methoden eines Objektes Java Basics - Anfänger-Themen 9
R Löschen und ausgeben eines Teilbaums Java Basics - Anfänger-Themen 3
J Alle Werte eines Strings zusammen addieren Java Basics - Anfänger-Themen 15
M Hilfe bei Strukturierung eines Buchungssystems Java Basics - Anfänger-Themen 3
M Erstellen eines insets Objekts, GridBagLayout Java Basics - Anfänger-Themen 13
M Rückgabe eines Arrays Java Basics - Anfänger-Themen 10
Z Erste Schritte Indexe innerhalb eines Arrays zusammensählen Java Basics - Anfänger-Themen 14
W Random Zahl unter Berücksichtung eines Durchschnitts Java Basics - Anfänger-Themen 7
N Länge eines Arrays in einem Objekt testen Java Basics - Anfänger-Themen 51
A Freie Stelle eines Arrays Java Basics - Anfänger-Themen 17
C Erstellen eines Widerstandsnetzwerks Java Basics - Anfänger-Themen 10
C Methode Seiten tauschen eines erstellten Rechtecks mit Seite A und B Java Basics - Anfänger-Themen 9
R Zugriff auf den Index eines Arrays, welches ein Objekt ist. Java Basics - Anfänger-Themen 4
J Problem bei der Programmierung eines Tannenbaums Java Basics - Anfänger-Themen 9
F Berechnung der Rektaszension und Deklination eines Sterns Java Basics - Anfänger-Themen 7
1 Erste Schritte Was denkt ihr über eines meiner ersten Javaprogramme? Java Basics - Anfänger-Themen 2
A Problem bei returnen eines Wertes Java Basics - Anfänger-Themen 6
D Input/Output Problem bei der Benutzereingabe eines Befehls Java Basics - Anfänger-Themen 14
H Größte Duplikat (Größte Doppelte Wert) eines Arrays ausgeben Java Basics - Anfänger-Themen 9
M Hinzufügen eines Objekts auf ein Map Java Basics - Anfänger-Themen 4
M Auf einen Array innerhalb eines Objekts zugreifen Java Basics - Anfänger-Themen 5
S Elemente eines Arrays bei Ausgabe auslassen Java Basics - Anfänger-Themen 2
S Ersetzen eines Asterix in einem String Java Basics - Anfänger-Themen 8
M Struktur eines Fotobuches Java Basics - Anfänger-Themen 6
J Implementierung eines Zustandsdiagramms Java Basics - Anfänger-Themen 19
T Prüfung auf Existenz eines Dialogfensters Java Basics - Anfänger-Themen 5
I ArrayList - Methode zum Speichern eines Eintrags in einer Datei Java Basics - Anfänger-Themen 17
I Labyrinth auf der Basis eines rekursiven Algorithmus Java Basics - Anfänger-Themen 27

Ähnliche Java Themen

Neue Themen


Oben