Lagerverwaltung erstellen - mehrdimensionale Arrays

melaniemueller

Aktives Mitglied
Hey zusammen!
Nachdem ich nun Stunden über Stunden hier im Forum und noch auf zig anderen Seiten recherchiert habe zu dieser Aufgabe und dennoch es nicht komplett schaffe kommt nun doch ein Thread von mir. Wie ich mit bekommen habe, gibt es zu genau meiner Aufgabe aus dem Fernstudium bereits einige Fragen - so i'm sorry - aber ich hab sie mir alle durchgelesen und mir helfen sie bei meinen aktuellen Problemen leider nicht, daher bitte helft mir o_O

Aufgabenstellung:

Erstellen Sie eine „Lagerverwaltung“, die folgende Daten für Kisten speichern kann:

• eine eindeutige Nummer zur Identifikation jeder einzelnen Kiste,

• die Breite, Länge und Höhe jeder Kiste.

Die Nummer zur Identifikation der Kiste können Sie nach einem beliebigen Schema selbst vergeben. Stellen Sie aber durch geeignete Verfahren sicher, dass bei der Eingabe einer neuen Kiste nicht eine bereits vergebene Nummer benutzt wird.

Das Programm soll die Daten der Kisten lediglich zur Laufzeit speichern – also nur so lange, wie das Programm arbeitet. Es sollen maximal Daten von 75 Kisten verwaltet werden können.

Das Programm soll folgende Funktionen anbieten:

• Eingabe einer neuen Kiste,

• Löschen der Daten einer vorhandenen Kiste,

• Ändern der Daten einer vorhandenen Kiste,

• Anzeigen der Daten einer vorhandenen Kiste und

• eine Listenfunktion, die die Daten aller vorhandenen Kisten anzeigt.

Beim Löschen, Ändern und Anzeigen soll der Zugriff auf die Daten der Kiste über die Nummer der Kiste erfolgen.

Für die Umsetzung gelten folgende Vorgaben:

• Speichern Sie die Daten in einem mehrdimensionalen Array. Erstellen Sie dieses Array lokal in der Methode main(). Verwenden Sie bitte keine Klassenvariable für das Array.

• Stellen Sie sicher, dass beim Zugriff auf die Daten der Kisten die Grenzen des Arrays nicht verlassen werden.

• Erstellen Sie für das Eingeben, Löschen, Ändern, Anzeigen und Auflisten jeweils eigene Methoden.

• Sorgen Sie dafür, dass beim Löschen, Ändern, Anzeigen und Auflisten nur auf Einträge zugegriffen werden kann, für die bereits Daten erfasst wurden. Dazu können Sie zum Beispiel überprüfen, ob die Nummer der Kiste noch den Wert 0 hat, der beim Anlegen des Arrays automatisch zugewiesen wird. Um eine Kiste zu löschen, reicht es dann, die Nummer der Kiste wieder auf den Wert 0 zu setzen.

• Erstellen Sie in der Methode main() ein Auswahlmenü für den Zugriff auf die einzelnen Funktionen der Lagerverwaltung.

• Kommentieren Sie sowohl die verwendeten Variablen als auch die Methoden. Geben Sie bei den Methoden bitte eine kurze Beschreibung der Funktionsweise, der verwendeten Argumente und eines eventuellen Rückgabewerts an.


Mein bisheriger Ansatz der eigentlich fast fertig sein sollte:

Java:
package einsendeaufgabe_4;
import java.util.Arrays;
import javax.swing.*;

public class einsendeaufgabe_4 {

    //Eingabe einer neuen Kiste
    static void eingabe (int[][]Eingabe) {
        int nummer;
        int breite, länge, höhe;
       
            nummer=Integer.parseInt(JOptionPane.showInputDialog("Geben Sie eine Kistennummer zwischen 1-75 an"));
            //wenn die Nummer gültig ist und noch nicht verwendet wurde, werden die Daten eingegeben
            if (nummer>0 && nummer<=Eingabe.length)
                if(Eingabe[nummer-1][0]==0) {
                    //Nummer zuweisen
                    Eingabe[nummer-1][0]=nummer;
                    //Werte einlesen
                    breite=Integer.parseInt(JOptionPane.showInputDialog("Breite der Kiste"));
                    Eingabe[nummer-1][1]=breite;
                    länge=Integer.parseInt(JOptionPane.showInputDialog("Länge der Kiste"));
                    Eingabe[nummer-1][2]=länge;
                    höhe=Integer.parseInt(JOptionPane.showInputDialog("Höhe der Kiste"));
                    Eingabe[nummer-1][3]=höhe;
                    System.out.println("Die Kiste " + nummer + " hat nun die Werte:  " + breite + " Breite, " + länge + " Länge, " + höhe + " Höhe." );
                }else {
                    System.out.println("Kiste ungültig");
                    }
       
   
    }
   
   
    // Anzeige der Daten einer vorhandenen Kiste
    static void anzeigen (int[][]Anzeigen) {
        int nummer;
        nummer=Integer.parseInt(JOptionPane.showInputDialog("Bitte die gewünschte Kistennummer eingeben."));
        for(int i =0; i < Anzeigen.length; i++) {
            if (nummer>0 && nummer<=Anzeigen.length && Anzeigen[i][0]==nummer) {
                System.out.println("Die Daten der Kiste lauten: " + Arrays.toString(Anzeigen[i]));
                return;
               
            }
        }
        System.out.println("Die Kistennummer ist ungültig");
       
    }
   
    // Anzeigen aller Daten von allen Kisten
    static void liste (int[][]Liste) {
        for (int kistenIndex = 0;kistenIndex < Liste.length; kistenIndex++) {
            if(Liste[kistenIndex] == null) {
                continue;
            }
            for (int detailsIndex=0;detailsIndex<Liste[kistenIndex].length;detailsIndex++) {
           
           
       
            System.out.println(Liste[kistenIndex][detailsIndex]); }
    }
    }
   
   
    // Löschen einer Kiste
   
      static void löschen(int[][] Löschen) {
       
              int nummer;
       
        //Kistennummer eingeben
        do {
          nummer=Integer.parseInt(JOptionPane.showInputDialog("Geben Sie bitte die zu löschende Kistennummer ein!"));
       
          //Überprüfung ob die eingegebene Kiste vorhanden ist
          if(nummer>0 && nummer<=Löschen.length)
              if(Löschen[nummer-1][0]==nummer){
             
              Löschen[0][0]=nummer;
             
              }
         
              else {
                  System.out.println("\nDie Kistennummer " +nummer + " ist nicht vorhanden");
              }
        }
          while(nummer<=0 || nummer>Löschen.length);
          }
   
      //Ändern einer Kiste
       
      static void ändern(int[][]Ändern) {
   
            int nummer;
            int breite, laenge, hoehe;
           
             //Kistennummer eingeben
            do {
                nummer=Integer.parseInt(JOptionPane.showInputDialog("Geben Sie bitte eine Kistennummer ein, die sie ändern möchten!"));
               
                //Wenn Kistennummer gültig
                if(nummer>0 && nummer<=Ändern.length)
                    if(Ändern[nummer-1][0]!=0){
       
                        //Werte Einlesen
                        breite=Integer.parseInt(JOptionPane.showInputDialog("Kistenbreite"));
                        Ändern[nummer-1][1]=breite;
                       
                        laenge=Integer.parseInt(JOptionPane.showInputDialog("Kistenlaenge"));
                        Ändern[nummer-1][2]=laenge;
                       
                        hoehe=Integer.parseInt(JOptionPane.showInputDialog("Kistenhoehe"));
                        Ändern[nummer-1][3]=hoehe;
                       
                    }
                       
                        else {
                            System.out.println("\nDie Kistennummer ist ungültig oder noch nicht vergeben");
                        }
                }
                while(nummer<=0 || nummer>Ändern.length);
       
    }
   
    public static void main(String[] args) {
       
    //Die Vereinbarung des Arrays
int [][] lagerverwaltung = new int [75][4];


//Auswahl der Funktion

String funktionEinlesen;

char funktion;
while (true) {
System.out.println("Folgende Funktionen stehen Ihnen zur Auswahl: \n");
System.out.println("A \t Eingabe einer neuen Kiste");
System.out.println("B \t Löschen einer Kiste");
System.out.println("C \t Ändern einer Kiste");
System.out.println("D \t Daten einer Kiste anzeigen");
System.out.println("E \t Daten aller Kisten anzeigen");
System.out.println("Q \t Programm beenden");

funktionEinlesen=JOptionPane.showInputDialog("Wählen Sie eine Funktion");
funktion = funktionEinlesen.charAt(0);

//Auswahl auswerten

switch(funktion) {

case 'a':
case 'A':
    System.out.println("\nSie haben \"Eingabe einer neuen Kiste\" gewählt");
    eingabe(lagerverwaltung);
    break;
   
case 'b':
case 'B':
    System.out.println("\nSie haben \"Löschen einer Kiste\" gewählt");
    löschen(lagerverwaltung);
    break;

case 'c':
case 'C':
    System.out.println("\nSie haben \"Ändern einer Kiste\" gewählt");
    ändern(lagerverwaltung);
    break;

case 'd':
case 'D':
    System.out.println("\nSie haben \"Daten einer Kiste anzeigen\" gewählt");
    anzeigen(lagerverwaltung);
    break;
case 'e':
case 'E':
    System.out.println("\nAktuelle Daten aller Kisten:");
    liste(lagerverwaltung);
    break;
case 'q':
case 'Q':
    return;
}
}

}

}

Was aktuell noch nicht funktioniert:

1. das Anzeigen aller bisher gespeicherten Werte im Array. Bedeutet alle angelegten Kisten mit Breite, Länge, Höhe. Aktuell zeigt er mir nur 0en an. Ich würde es gerne übersichtlich darstellen und natürlich nur vergebene Kisten, daher eigentlich der if-Part mit continue, aber irgendwas scheint hier nicht zu funktionieren.

2. das Löschen einer vorhandenen Kiste - hier passiert bisher gar nichts.

Ich war komplett überfordert mit dieser Aufgabe und alles was dort nun steht war lange Recherche und häufiges nachblättern in meinen Heften...ich hoffe ich komme noch zum Ergebnis und es ist danach alles plausibel für mich, denn schließlich sollte man ja auch verstehen was man da schreibt. 😅

Ich freue mich über sämtliche Hilfe!
 
M

Mart

Gast
• Speichern Sie die Daten in einem mehrdimensionalen Array. Erstellen Sie dieses Array lokal in der Methode main(). Verwenden Sie bitte keine Klassenvariable für das Array.
was das sollte versteh ich noch nicht ganz



Kommentieren Sie sowohl die verwendeten Variablen als auch die Methoden. Geben Sie bei den Methoden bitte eine kurze Beschreibung der Funktionsweise, der verwendeten Argumente und eines eventuellen Rückgabewerts an.

noch als anekdote find ich diesen Satz ziemlich lustig "einen eventuellen Rückgabewert"...als ob die Java Virtuelle Maschine sich einfach sagt "ja was kommt den da ...kommt da ein int ...kommt da nix ...wer weis ..wer weis.." und kommentare zu Sachen die es im Code nicht gibt sind immer die beschten :D
 
Zuletzt bearbeitet von einem Moderator:

LimDul

Top Contributor
Btgl., des Löschens, da ist diese Zeile falsch:
Code:
             Löschen[0][0]=nummer;
Du willst den Eintrag für die Kiste mit der Nummer auf 0 setzen - nicht die Kiste 0 auf die nummer.
 

mrBrown

Super-Moderator
Mitarbeiter
noch als anekdote find ich diesen Satz ziemlich lustig "einen eventuellen Rückgabewert"...als ob die Java Virtuelle Maschine sich einfach sagt "ja was kommt den da ...kommt da ein int ...kommt da nix ...wer weis ..wer weis.." und kommentare zu Sachen die es im Code nicht gibt sind immer die beschten :D
Das „eventueller Rückgabewert“ bezieht sich einfach nur darauf, das manche Methode einen haben und manche nicht ("void").
 

mrBrown

Super-Moderator
Mitarbeiter
Hier gibts doch zig Threads zu genau dieser Aufgabe, liegt das grad an mir, dass ich keinen einzigen über die Suche finde?
 
M

Mart

Gast
Das „eventueller Rückgabewert“ bezieht sich einfach nur darauf, das manche Methode einen haben und manche nicht ("void").
ist nicht void ein leerer rücckgabewert..also ein Rückgabewert der leer ist... nur weil er leer ist ist er trotzdem da :D

die Zeile

Java:
return;
geht glaub ich auch um aus der Methode raus zu brechen...weis aber nimmer genau wo es funktioniert habe es nie gebraucht
 
K

kneitzel

Gast
Wo sind denn die anderen Klassen? die Kisten Klasse...DIe Speicherklasse wo sind die D:
Also um den TE nicht zu verwirren: Es ist nicht Deine Aufgabe, mehrere Klassen zu erstellen.

Der TE ist noch recht weit am Anfang und soll nun erst einmal mit 2D Arrays arbeiten.

ist nicht void ein leerer rücckgabewert..also ein Rückgabewert der leer ist... nur weil er leer ist ist er trotzdem da :D
void ist einfach ein keyword, das angibt, dass eine Methode keine Rückgabe hat.
JLS 8.4.5:
The result of a method declaration either declares the type of value that the method returns (the return type), or uses the keyword void to indicate that the method does not return a value.

Und natürlich kann man mit return eine Methode verlassen, de keine Rückgabe hat.

1. das Anzeigen aller bisher gespeicherten Werte im Array. Bedeutet alle angelegten Kisten mit Breite, Länge, Höhe. Aktuell zeigt er mir nur 0en an. Ich würde es gerne übersichtlich darstellen und natürlich nur vergebene Kisten, daher eigentlich der if-Part mit continue, aber irgendwas scheint hier nicht zu funktionieren.
Hier ist der check falsch. Du prüfst auf null, aber das ist falsch. Du legst ja ein 2D Array an, daher ist diese Prüfung nie wahr.
Die Prüfung muss sein, ob [kistenIndex][0] == 0 ist (statt [kistenIndex] == null).
Hier ist also das Verständnis wichtig: null ist was anderes als 0!
 

Dompteur

Top Contributor
Bei deiner eingabe Methode solltest du auch den Fall berücksichtigen, dass ein neuer Eintrag an der Stelle eines vorher gelöschten eingefügt werden soll.
Du musst also prüfen ob "lager[index][0] == 0" ist.
 

melaniemueller

Aktives Mitglied
Also um den TE nicht zu verwirren: Es ist nicht Deine Aufgabe, mehrere Klassen zu erstellen.

Der TE ist noch recht weit am Anfang und soll nun erst einmal mit 2D Arrays arbeiten.


void ist einfach ein keyword, das angibt, dass eine Methode keine Rückgabe hat.
JLS 8.4.5:


Und natürlich kann man mit return eine Methode verlassen, de keine Rückgabe hat.


Hier ist der check falsch. Du prüfst auf null, aber das ist falsch. Du legst ja ein 2D Array an, daher ist diese Prüfung nie wahr.
Die Prüfung muss sein, ob [kistenIndex][0] == 0 ist (statt [kistenIndex] == null).
Hier ist also das Verständnis wichtig: null ist was anderes als 0!
Vielen Dank für deine Antwort! Stimmt, so ist es für mich auch verständlich, das habe ich nun geändert und jetzt funktioniert es auch!
Beim Löschen hapert es noch. Ich habe verstanden, dass der Fehler in der Zeile liegt wie LimDul geschrieben hat, aber irgendwie versteh ich nicht wie ich das ganze logisch umkehren kann.
Alles richtig nachvollziehen zu können fällt mir noch schwer 😅 Aber ich bin doch großer Hoffnung, dass dies mit jeder Übung besser wird.
 
K

kneitzel

Gast
Schauen uns noch einmal die Aufgabe etwas an:
Die Nummer zur Identifikation der Kiste können Sie nach einem beliebigen Schema selbst vergeben. Stellen Sie aber durch geeignete Verfahren sicher, dass bei der Eingabe einer neuen Kiste nicht eine bereits vergebene Nummer benutzt wird.

Das hast Du so gelöst, dass Du in dem 2D Array den ersten Index als Nummer der Kiste -1 genommen hast. Das erkennt man z.B. bei der Eingabe:
if(Eingabe[nummer-1][0]==0)
Also Kiste mit der Nummer "nummer" ist in Index "nummer-1" gespeichert. Die Id ist dabei noch zusätzlich in dem zweiten index=0 gespeichert. Steht da eine 0, dann ist der Lagerplatz leer.

Wenn das genannte if prüft, ob ein Lagerplatz leer ist, dann musst Du das halt beim leeren setzen.
Du prüfst ob 2dArray[id-1][0] == 0 ist. Also musst du dann setzen 2dArray[id-1][0] = 0.

Zur Erläuterung schauen wir uns nun noch einmal an, was LimDul geschrieben hat:
Btgl., des Löschens, da ist diese Zeile falsch:
Code:
             Löschen[0][0]=nummer;
Du willst den Eintrag für die Kiste mit der Nummer auf 0 setzen - nicht die Kiste 0 auf die nummer.
Derzeit setzt du beim Löschen eine id in das erste Feld - also für die Kiste mit id=1.
Das wollen wir aber nicht, sondern wir wollen, dass für die id (Kistennummer) nummer der Platz nun leer ist.
Dazu musst Du dann wieder schauen, was oben die Überlegungen waren ...
 

Jw456

Top Contributor
Derzeit setzt du beim Löschen eine id in das erste Feld - also für die Kiste mit id=1.
Das wollen wir aber nicht, sondern wir wollen, dass für die id (Kistennummer) nummer der Platz nun leer ist.
Dazu musst Du dann wieder schauen, was oben die Überlegungen waren ..
und auch beim Einfügen musst du schauen welcher Platz in dein Array noch frei ist.
 
K

kneitzel

Gast
und auch beim Einfügen musst du schauen welcher Platz in dein Array noch frei ist.
Das macht er ja - die Aufgabe besagt:
Die Nummer zur Identifikation der Kiste können Sie nach einem beliebigen Schema selbst vergeben.
Und das hat er - die Ids sind genau von 1-n mit n der Lagergröße.
Und da es keine doppelten Ids geben kann, ist jede Kiste am Platz id-1.

Somit prüft er einfach nur:
if(Eingabe[nummer-1][0]==0) {


Aber ja - das war auch beim ersten Lesen meine Überlegung. Ich hätte da auch eine andere, komplexere Lösung, erwartet. Dieses selbst überlegte Schema ist ggf. nicht das, das die Aufgabe vorgesehen hat.

Für den TE:
Die Idee, die ich da in die Aufgabe interpretiert hatte: Die Id kann eine beliebige Zahl sein im Bereich von int.
Beim Einfügen einer Kiste ist daher zuerst notwendig, alle Elemente durchzugehen und zu schauen: Ist das Feld leer? Ein leeres Feld merkst Du dir! und dann prüfen: Ist da eine Kiste mit der gewünschten id vorhanden? Hast Du eine Kiste mit der id schon, dann ist ein Fehler auszugeben. Ebenso, wenn kein leerer Lagerplatz gefunden wurde.
Beim Löschen müsste man dann auch das Array durchsuchen um die Kiste zu finden ...
u.s.w.

Aber deine deutlich einfachere Lösung scheint erst einmal ok zu sein aus Sicht der Aufgabe. Aus Übungsgründen würde ich Dir raten, aber evtl. auch die andere Art und Weise zu nutzen. Und da dann mit weiteren Methoden zu arbeiten. Also eine Methode, die z.B. nach einem index einer Kiste sucht. Die ist universell verwendbar um eine Liste zu löschen, eine Kiste auszugeben, prüfen, ob die Kiste vorhanden ist, ...
 

Jw456

Top Contributor
Ich sehe in der Eingabe Methode aber keine Schleife die prüft welcher Platz im Array noch frei ist. Und auch keine Warnung wenn alle Plätze belegt sind.
 

melaniemueller

Aktives Mitglied
Das macht er ja - die Aufgabe besagt:

Und das hat er - die Ids sind genau von 1-n mit n der Lagergröße.
Und da es keine doppelten Ids geben kann, ist jede Kiste am Platz id-1.

Somit prüft er einfach nur:
if(Eingabe[nummer-1][0]==0) {


Aber ja - das war auch beim ersten Lesen meine Überlegung. Ich hätte da auch eine andere, komplexere Lösung, erwartet. Dieses selbst überlegte Schema ist ggf. nicht das, das die Aufgabe vorgesehen hat.

Für den TE:
Die Idee, die ich da in die Aufgabe interpretiert hatte: Die Id kann eine beliebige Zahl sein im Bereich von int.
Beim Einfügen einer Kiste ist daher zuerst notwendig, alle Elemente durchzugehen und zu schauen: Ist das Feld leer? Ein leeres Feld merkst Du dir! und dann prüfen: Ist da eine Kiste mit der gewünschten id vorhanden? Hast Du eine Kiste mit der id schon, dann ist ein Fehler auszugeben. Ebenso, wenn kein leerer Lagerplatz gefunden wurde.
Beim Löschen müsste man dann auch das Array durchsuchen um die Kiste zu finden ...
u.s.w.

Aber deine deutlich einfachere Lösung scheint erst einmal ok zu sein aus Sicht der Aufgabe. Aus Übungsgründen würde ich Dir raten, aber evtl. auch die andere Art und Weise zu nutzen. Und da dann mit weiteren Methoden zu arbeiten. Also eine Methode, die z.B. nach einem index einer Kiste sucht. Die ist universell verwendbar um eine Liste zu löschen, eine Kiste auszugeben, prüfen, ob die Kiste vorhanden ist, ...
Würde das Durchsuchen denn mit der Methode Arrays.binarySearch() funktionieren? Die hatte ich mir auch angeschaut, als erste Überlegung, da ich darüber auch in einer der letzten Kapitel etwas gelernt habe. Um diese zu nutzen muss man jedoch vorher auch Arrays.sort() nutzen, so steht es dort. Ausprobiert habe ich es aber bisher nicht.
 

mrBrown

Super-Moderator
Mitarbeiter
Ich sehe in der Eingabe Methode aber keine Schleife die prüft welcher Platz im Array noch frei ist. Und auch keine Warnung wenn alle Plätze belegt sind.
Die IDs der Kisten sind eindeutig und die ID wird als Index benutzt – es kann also ein Platz für eine Kiste nicht schon belegt sein.
 
Zuletzt bearbeitet:

melaniemueller

Aktives Mitglied
Ich sehe in der Eingabe Methode aber keine Schleife die prüft welcher Platz im Array noch frei ist. Und auch keine Warnung wenn alle Plätze belegt sind.
Java:
//wenn die Nummer gültig ist und noch nicht verwendet wurde, werden die Daten eingegeben
            if (nummer>0 && nummer<=argEingabe.length)
                if(argEingabe[nummer-1][0]==0) {
                    //Nummer zuweisen
                    argEingabe[nummer-1][0]=nummer;
                    //Werte einlesen
                    breite=Integer.parseInt(JOptionPane.showInputDialog("Breite der Kiste"));
                    argEingabe[nummer-1][1]=breite;
                    länge=Integer.parseInt(JOptionPane.showInputDialog("Länge der Kiste"));
                    argEingabe[nummer-1][2]=länge;
                    höhe=Integer.parseInt(JOptionPane.showInputDialog("Höhe der Kiste"));
                    argEingabe[nummer-1][3]=höhe;
                    System.out.println("Die Kiste " + nummer + " hat nun die Werte:  " + breite + " Breite, " + länge + " Länge, " + höhe + " Höhe." );
                }else {
                    System.out.println("Kiste ungültig");
                    }

Hier ist meine Überprüfung.
 

Jw456

Top Contributor
Die IDs der Kisten sind eindeutig und die ID wird als Index benutzt – es kann also ein Platz für eine Kiste nicht schon belegt sein.
OK in diesem Fall kann sie nur Kisten Nummern von 1- 75 eingeben. Und Kiste Nr. 5 wird dann immer auf Platz 5 gelegt.
gut scheint die Aufgabe zu sein.
 
Zuletzt bearbeitet:

melaniemueller

Aktives Mitglied
Ich danke euch! Ich bin nun nochmal alle Funktionen durchgegangen und es hat alles funktioniert, daher hab ich das Ganze nun so eingereicht und bin gespannt auf die Korrektur.

Tolles Forum mit direkter, verständlicher Hilfe! 😊
 

Meniskusschaden

Top Contributor
Die Nummer zur Identifikation der Kiste können Sie nach einem beliebigen Schema selbst vergeben. Stellen Sie aber durch geeignete Verfahren sicher, dass bei der Eingabe einer neuen Kiste nicht eine bereits vergebene Nummer benutzt wird.

Das Programm soll die Daten der Kisten lediglich zur Laufzeit speichern – also nur so lange, wie das Programm arbeitet. Es sollen maximal Daten von 75 Kisten verwaltet werden können.
Das Programm soll folgende Funktionen anbieten:

• Eingabe einer neuen Kiste,

Ich finde die Aufgabe problematisch, weil sie sprachlich unpräzise formuliert ist. Insbesondere wird nicht definiert, wann eine Kiste als "neu" und eine Nummer als "vergeben" gelten soll. "neu" im Sinne von "sie ist gerade nicht im Lager" oder im Sinne von "die Kiste hatten wir noch nie"?

Beispiel: Eine Kiste mit der Nummer 10 wird eingefügt, gelöscht und erneut eingefügt.

Ist das nicht das Einfügen einer neuen Kiste (immerhin heißt die Funktion "neue Kiste") mit einer bereits vergebenen Nummer (immerhin wurde sie schon mal vergeben)?

Nirgends steht, dass die Nummer 10 durch das Löschen wieder als "nicht vergeben" gelten soll. Und es ist auch nicht klar, ob eine ausgelagerte Kiste wieder als "neu" gelten darf, wenn sie erneut eingelagert wird.

Es kann sein, dass das alles so gemeint ist, aber gerade die Vorgabe, dass die Kistennummer im Array gespeichert werden soll, suggeriert eigentlich etwas anderes. Da auch nicht explizit gefordert wird, dass der Anwender die Kistennummer beim Einlagern eingeben soll, hätte ich es vermutlich so gelöst, dass die Kistennummer per Inkrement vom Programm vergeben wird und die Kiste auf den nächsten freien Platz gelegt wird.
 
M

Mart

Gast
Ich finde die Aufgabe problematisch, weil sie sprachlich unpräzise formuliert ist. Insbesondere wird nicht definiert, wann eine Kiste als "neu" und eine Nummer als "vergeben" gelten soll. "neu" im Sinne von "sie ist gerade nicht im Lager" oder im Sinne von "die Kiste hatten wir noch nie"?

Beispiel: Eine Kiste mit der Nummer 10 wird eingefügt, gelöscht und erneut eingefügt.

Ist das nicht das Einfügen einer neuen Kiste (immerhin heißt die Funktion "neue Kiste") mit einer bereits vergebenen Nummer (immerhin wurde sie schon mal vergeben)?

Nirgends steht, dass die Nummer 10 durch das Löschen wieder als "nicht vergeben" gelten soll. Und es ist auch nicht klar, ob eine ausgelagerte Kiste wieder als "neu" gelten darf, wenn sie erneut eingelagert wird.

Es kann sein, dass das alles so gemeint ist, aber gerade die Vorgabe, dass die Kistennummer im Array gespeichert werden soll, suggeriert eigentlich etwas anderes. Da auch nicht explizit gefordert wird, dass der Anwender die Kistennummer beim Einlagern eingeben soll, hätte ich es vermutlich so gelöst, dass die Kistennummer per Inkrement vom Programm vergeben wird und die Kiste auf den nächsten freien Platz gelegt wird.
Anscheinend war es eine Abgabe Prüfung bzw note ,,die sind niemals klar formuliert
 
M

Mart

Gast
Findest du? Ich habe lange keine Prüfung mehr abgelegt, aber meiner Erfahrung nach wurde da früher immer sehr genau formuliert und man musste auf jedes Wort achten.
du formulierst sie so schwammig wie möglcih um spiel raum zu habaen dass du jeden durchlassen kannst damit du keine Anzeige erhalten kannst ...und bei mir im Studium kommen auch die durch die eifnach nur Geld für Anwälte haben
 

Meniskusschaden

Top Contributor
du formulierst sie so schwammig wie möglcih um spiel raum zu habaen dass du jeden durchlassen kannst damit du keine Anzeige erhalten kannst ...und bei mir im Studium kommen auch die durch die eifnach nur Geld für Anwälte haben
:DVerschwörungstheorien sind ja immer interessant. Aber was soll denn das Motiv für den Aufgabensteller sein? Bezahlt ihn der reiche Student? Also zahlt der für schwammige Aufgaben, die er nicht lösen kann, um sich anschließend ein positives Ergebnis einzuklagen? Hört sich nicht so überzeugend an. Warum bezahlt er ihn nicht direkt für die Lösungen? Wäre doch viel einfacher.
 
M

Mart

Gast
:DVerschwörungstheorien sind ja immer interessant. Aber was soll denn das Motiv für den Aufgabensteller sein? Bezahlt ihn der reiche Student? Also zahlt der für schwammige Aufgaben, die er nicht lösen kann, um sich anschließend ein positives Ergebnis einzuklagen? Hört sich nicht so überzeugend an. Warum bezahlt er ihn nicht direkt für die Lösungen? Wäre doch viel einfacher.
wir haben 19 Leute die geklagt haben letzes jahr dass die Prüfung zu schwer war in OOP2 und dürfen jetzt nochmal die Prüfung schreiben
 
K

kneitzel

Gast
Aus "zu schwer" folgert sich nicht, dass etwas "schwammig" formuliert war.

Exakte Formulierungen schützen ansonsten vor Klagen. Wenn etwas nicht eindeutig ist, dann öffnen sich ja erst die Optionen, das anzufechten.

Und wenn da 19 Studenten geklagt haben, dann ist d für uns hier erst einmal nichts dazu zu sagen, denn den genauen Fall kennen wir nicht. Da wäre ansonsten wichtig zu erfahren, was da denn der genaue Vorwurf war. Und selbst wenn das ein Fall war, der so liegt wie Du vermutest (Also Ursache schwammige Formulierungen oder so), dann ist das ein einzelner Fall. Das zu verallgemeinern dürfte auch schwer zu rechtfertigen sein.

Ansonsten sage ich mal: Herzlich willkommen in der realen Welt. Das Thema "Low Performer" und "No-Performer" wirst Du in Konzernen auch noch mitbekommen wenn Du sowas noch nicht kennst.
 
M

Mart

Gast
"Nenne 5 UI Controls" war zb eine Aufgabe ...wir hatten da Javafx... und alle "das haben wir nicht gehabt" .... weil der Ausdruck "GUI Controls" in der Vorlesugn bneutzt wurde
 
K

kneitzel

Gast
Dann liegt es an einer Ungenauigkeit. Wobei ich da schon überlege, was für Transferleistungen man da von so Personen erwarten darf ...

Ich muss da an ein Bild denken, das ich in der Plauderecke vor einiger Zeit gepostet habe ... ja, so eine Aufgabe ist nicht zeitgemäß und viel zu schwer. Es muss immer in der Form sein: "Ein Feld hat eine Länge von 5m und eine Breite von 4m. Berechne den Flächeninhalt, indem Du Länge mal Breite rechnest und kreuze die richtige Antwort an: a) blau b) Es ist 17:23 c) 20 m² d) Das Haus steht auf einer grünen Wiese....."

Oder der Thread neulich - aber lassen wir das Thema ...
 

mihe7

Top Contributor
"Nenne 5 UI Controls" war zb eine Aufgabe ...wir hatten da Javafx... und alle "das haben wir nicht gehabt" .... weil der Ausdruck "GUI Controls" in der Vorlesugn bneutzt wurde
Also bitte, wer da schreit "das haben wir nicht gehabt", sollte vielleicht seinen Schulabschluss zurückgeben. Mit so einem Käse kommt man ja selbst in der Baumschule nicht durch :)

Vorstellbar wäre, dass auf diese Frage speziell JavaFX-Controls erwartet und ausschließlich diese gezählt worden sind. Das geht - je nach Kontext - natürlich nicht. Strittig könnte der Fall werden, wenn im Kurs ausschließlich JavaFX behandelt wurde.
 
M

Mart

Gast
Also bitte, wer da schreit "das haben wir nicht gehabt", sollte vielleicht seinen Schulabschluss zurückgeben. Mit so einem Käse kommt man ja selbst in der Baumschule nicht durch :)

Vorstellbar wäre, dass auf diese Frage speziell JavaFX-Controls erwartet und ausschließlich diese gezählt worden sind. Das geht - je nach Kontext - natürlich nicht. Strittig könnte der Fall werden, wenn im Kurs ausschließlich JavaFX behandelt wurde.
Es war nur auf javafx bezogen udn wir haben nru javafx gemacht ...1 Semester Lang

wir haben über 20 verschiedene UI Controls benutzt
Label
TextArea
TextField
Button
ComboBox

wären volle punktzahl gewesen... nach 1em Semester von purem Javafx sollte man da irgendwelche 5 COntrols gebacken kriegen
 
K

kneitzel

Gast
Die Frage war zu schwer - sie hätte halt zum ankreuzen sein müssen:

Kreuze die Antwort mit 5 UI Controls an:
a) Berlin, Hamburg, München, Kiel, Bielefeld
b) Label, TextArea, TextField, Button, ComboBox
c) 10m², 5m², 10 dm², 25l
d) Student, Professor, Sekretärin, Studentische Hilfskraft, Dozent

Das ist dann auch die Vorbereitung zur Wissenschaftliche Arbeit:
Wähle das gebundene Werk mit der Wissenschaftlichen Ausarbeitung aus und gib es ab:
a) Herr der Ringe, 1. Band
b) Harry Potter und der Gefangene von Azkaban
c) <irgend ein wissenschaftlicher Titel>
d) Biene Maya und ihre Freunde

Wobei das bestimmt auch Klagen nach sich zieht: Wie soll man in einer so begrenzten Zeit 4 Ausarbeitungen lesen? Ok, d) war ein Bilderbuch für kleine Kinder, aber Herr der Ringe und Harry Potter sind ja doch schon etwas dickere Werke ...

Und 15% der Studenten sind durchgefallen - die haben beim Durchblättern des Kinderbuches so viel neues gelernt, dass sie überzeugt waren, dass dies das wissenschaftliche Werk gewesen sein müsste ...

*scnr* nein, so negativ ist mein Bild nicht auf heutige Studenten. Aber etwas Spaß muss ja sein :)
 
M

Mart

Gast
Die Frage war zu schwer - sie hätte halt zum ankreuzen sein müssen:

Kreuze die Antwort mit 5 UI Controls an:
a) Berlin, Hamburg, München, Kiel, Bielefeld
b) Label, TextArea, TextField, Button, ComboBox
c) 10m², 5m², 10 dm², 25l
d) Student, Professor, Sekretärin, Studentische Hilfskraft, Dozent

Das ist dann auch die Vorbereitung zur Wissenschaftliche Arbeit:
Wähle das gebundene Werk mit der Wissenschaftlichen Ausarbeitung aus und gib es ab:
a) Herr der Ringe, 1. Band
b) Harry Potter und der Gefangene von Azkaban
c) <irgend ein wissenschaftlicher Titel>
d) Biene Maya und ihre Freunde

Wobei das bestimmt auch Klagen nach sich zieht: Wie soll man in einer so begrenzten Zeit 4 Ausarbeitungen lesen? Ok, d) war ein Bilderbuch für kleine Kinder, aber Herr der Ringe und Harry Potter sind ja doch schon etwas dickere Werke ...

Und 15% der Studenten sind durchgefallen - die haben beim Durchblättern des Kinderbuches so viel neues gelernt, dass sie überzeugt waren, dass dies das wissenschaftliche Werk gewesen sein müsste ...

*scnr* nein, so negativ ist mein Bild nicht auf heutige Studenten. Aber etwas Spaß muss ja sein :)
ankreuz Fragen sind nicht mehr erlaubt an dieser Hochschule weil zu oft geklagt wurde :D

um genau zu sein Multiple Choice
 

Wajahat

Neues Mitglied
Hi, ich wollte dich mal etwas zu deinem Lagerprogramm der Einsendeaufgabe 4 Fragen.:)

Und zwar wie du es hinbekommen hast, dass die Bezeichnung der Kiste nur einmal gültig ist und nicht mehrmals eingelesen werden kann ?
 
K

kneitzel

Gast
Hi, ich wollte dich mal etwas zu deinem Lagerprogramm der Einsendeaufgabe 4 Fragen.:)

Und zwar wie du es hinbekommen hast, dass die Bezeichnung der Kiste nur einmal gültig ist und nicht mehrmals eingelesen werden kann ?
Bezeichnung war ja nur die Nr. der Kiste und die entsprach dem Platz im Array. Durch diesen Trick wurde das etwas vereinfacht.
Sprich: Das Entscheidene war das: Eingabe[nummer-1][0]=nummer; (Im ersten Code - Eingabe war das Array mit den Daten).

Wenn man dies nicht hat und eine Kiste mit beliebiger Bezeichnung / Nummer gespeichert werden würde, dann müsste man natürlich das Array durchsehen und die Bezeichnungen prüfen.
 

Wajahat

Neues Mitglied
Bezeichnung war ja nur die Nr. der Kiste und die entsprach dem Platz im Array. Durch diesen Trick wurde das etwas vereinfacht.
Sprich: Das Entscheidene war das: Eingabe[nummer-1][0]=nummer; (Im ersten Code - Eingabe war das Array mit den Daten).

Wenn man dies nicht hat und eine Kiste mit beliebiger Bezeichnung / Nummer gespeichert werden würde, dann müsste man natürlich das Array durchsehen und die Bezeichnungen prüfen.
Super dann versuch ich mal step by step alles nachzuvollziehen, muss nämlich den gleichen Code schreiben :)

Und herzlichen Dank für die schnelle und ausführliche Antwort
 

kalter_Tofu

Mitglied
Hallo, ich arbeite gerade an dieser Aufgabe. Meine Lagerverwaltung funktioniert, bis auf die Ausgabe aller Kisten. Ich habe das Forum durchsucht und ein paar Ansätze probiert, aber es hat nichts richtig funktioniert.

So wie ich das verstanden habe, muss ich nur den Teil "Ausgabe einer Kiste" für den Teil "Ausgabe aller Kisten" wiederholen. Wie geht das?
 

kalter_Tofu

Mitglied
Ich habe for-Schleifen ausprobiert, die for each-Schleife wird im Studienheft nicht erwähnt. Mit den for-Schleifen werden sehr viele Nullen oder sehr viele [[I@38c6f217 in einer Spalte untereinander ausgegeben.

Ich weiß, dass die Daten für die Kisten aufgerufen werden müssen, aber ich verstehe nicht, wie dieser Teil der Aufgabe funktioniert. Ich finde auch nirgends ein Beispiel an dem ich sehen und nachvollziehen kann, wie dieser Teil aussehen muss, damit die Ausgabe aller vorhandenen Kisten funktioniert.

Mit dem Teil "eine Listenfunktion, die die Daten aller vorhandenen Kisten anzeigt" komme ich nicht klar. An dem Teil hänge ich seit Wochen.
So langsam überlege ich, ob ich den Kurs weiter mache oder besser kündige und die monatlichen Gebühren dafür auf ein Sparkonto einzahle.


Mein Problem sieht so aus:

Java:
//Methode zur Ausgabe der Daten aller Kisten in der Lagerverwaltung
static void kistenListe (int[][] DatenListe) {
    
        //indexAussen: ID-Nummer einer Kiste; indexInnen: Länge, Breite und Höhe einer Kiste//
    
//Meine aktuellen Versuche:
    
    //Nr. 1
    for (int indexAussen = 0; indexAussen < DatenListe.length; indexAussen++) {
        for (int indexInnen = 0; indexInnen < DatenListe[indexAussen].length; indexInnen++) {
        System.out.println(DatenListe [indexAussen][indexInnen]);}
                        // Viele Nullen in einer Spalte untereinander
        
    //Nr. 2
    for (int indexAussen = 0; indexAussen < DatenListe.length; indexAussen++) {
            if (DatenListe[indexAussen] == null) {
                return;}
            for (int indexInnen = 0; indexInnen < DatenListe[indexAussen].length; indexInnen++) {
            System.out.println(DatenListe [indexAussen][indexInnen]);}
                            // Viele Nullen in einer Spalte untereinander
        
    //Nr. 3
    for (int idNummer = 0; idNummer <= DatenListe.length; idNummer++)    {
            if (DatenListe[0][0] == 0) {
                return;    }
                System.out.println(DatenListe);
                            // Viele [[I@38c6f217 in einer Spalte untereinander


Vielleicht kann mir hier Jemand erklären, was ich falsch mache und wie es richtig gemacht wird.
 

Neumi5694

Top Contributor
Bis auf deinen Versuch 3 scheint alles richtig zu sein (der ist Quatsch, dort versuchst du, das gesamte Array auf einmal auszugeben).
Es schaut einfach nur danach aus, als ob deine Felder nicht befüllt sind, das ist alles (schreib "datenListe" bitte im LoweCamelCase, das ist eine Variable).

Versuch 1. Nach jedem Eintrag in der Datenliste wird eine neue Zeile erstellt.
Die Nullen sagen nur aus, dass in dem entsprechenden Feld nichts steht.
Versuch 2 ist ok, fängt den Fall ab, dass ob die "Zeile" DatenListe[indexAussen] nicht befüllt ist. In dem Fall wird sie über sprungen.

Ändere deine Ausgabe mal in das hier:
Java:
System.out.printf("datenListe[%d][%d] = %d%n", indexAussen, indexInnen, datenListe[indexAussen][indexInnen]);
Wenn man sich schon was ausgeben lässt, dann können's gerne auch ein paar Informationen mehr sein.
 

kalter_Tofu

Mitglied
Ändere deine Ausgabe mal in das hier:
Java:
System.out.printf("datenListe[%d][%d] = %d%n", indexAussen, indexInnen, datenListe[indexAussen][indexInnen]);
Wenn man sich schon was ausgeben lässt, dann können's gerne auch ein paar Informationen mehr sein.
Danke für die schnelle Antwort, das hat mich ein ganzes Stück weiter gebracht.

Ich habe es getestet und jetzt sieht die Ausgabe so aus:

Java:
 "E: Daten aller Kisten anzeigen" wurde gewählt

DatenListe[0][0] = 1
DatenListe[0][1] = 100
DatenListe[0][2] = 50
DatenListe[0][3] = 75
DatenListe[1][0] = 2
DatenListe[1][1] = 30
DatenListe[1][2] = 60
DatenListe[1][3] = 120
DatenListe[2][0] = 3
DatenListe[2][1] = 25
DatenListe[2][2] = 10
DatenListe[2][3] = 30
=>bis hier die Daten von 3 Kisten, die ich eingegeben habe (Nummer, Länge, Breite, Höhe)
DatenListe[3][0] = 0
DatenListe[3][1] = 0
DatenListe[3][2] = 0
DatenListe[3][3] = 0
usw. bis 
DatenListe[74][0] = 0
DatenListe[74][1] = 0
DatenListe[74][2] = 0
DatenListe[74][3] = 0

Dieser Teil
datenListe[%d][%d] gibt die Koordinaten in den Arrays für datenListe[indexAussen] [indexInnen] (Nummer der Kiste, z.B. DatenListe[0][0] = 1)(Länge, Breite, Höhe der Kiste, z.B. DatenListe[0][1] = 100, DatenListe[0][2] = 50, DatenListe[0][3] = 75) an

und dieser Teil
= %d%n ist ein Platzhalter für indexAussen, indexInnen also z.B. [0][0]
Habe ich das richtig verstanden?


Ich habe auch das hier getestet:

Java:
for (int indexAussen = 0; indexAussen < DatenListe.length; indexAussen++) {
                if (DatenListe[indexAussen] == null) {
                continue;}
                for (int indexInnen = 0; indexInnen < DatenListe[indexAussen].length; indexInnen++) {
                    System.out.print(" " + DatenListe [indexAussen][indexInnen]);
                }

so stehen Nummer, Länge, Breite und Höhe für alle Kisten hintereinander.
Jetzt muss ich nur noch herausfinden, wie ich nach jedem Datensatz für eine Kiste einen Zeilenumbruch hinbekomme.
 

Neumi5694

Top Contributor
Letzteres ist einfach. Nach der inneren Forschleife einfach noch ein println.

Noch schöner wird's natürlich, wenn du mit einem Formatter eine ganze Zeile erstellst.
Java:
var f = new Formatter();
for (int indexInnen = 0; indexInnen < DatenListe[indexAussen].length; indexInnen++) {
    f.format (" %d", DatenListe [indexAussen][indexInnen]);
}
System.out.println(f.toString());

Was die Platzhalter angeht, Im String stehen 3 Platzhalter ("%d") und ein spezielles Zeichen("%n")
"%d" steht dabei für Formatierung als Ganzzahlwert.
"%n" heißt: An dieser Stelle einen Zeilenumbruch einfügen.

Sofern nicht anders angegeben werden die Platzhalter mit den entsprechenden Parametern in der selben Reihenfolge ersetzt.
Also wird am ersten "%d" indexAussen eingesetzt, am zweiten wird indexInnen eingesetzt, am letzten der im Array gespeicherte Wert.



ps: Formatter und StringBuilder sind cool :) Beschäftige dich mal etwas damit.
Man könnte das noch etwas an die Spitze treiben
Code:
//Damit wird der gesamte Text aller Felder auf einmal ausgegeben
[CODE=java]var f = new Formatter();
for (int indexAussen = 0; indexAussen < DatenListe.length; indexAussen++) {
    int[] innereListe = DatenListe[indexAussen];
    for (int indexInnen = 0; indexInnen < innereListe.length; indexInnen++) {
        f.format (" %d", innereListe[indexInnen]); //Leerzeichen vor dem Platzhalter
    }
    f.format("%n"); //Zeilenumbruch nach jeder Gruppe
}
System.out.println(f.toString());
[/CODE]
 

Neumi5694

Top Contributor
Noch was: Ich weiß nicht, ob du mit integer-Arrays arbeiten musst, aber nachdem dein inneres Array aus sehr klar definierten Werten besteht und dein äußeres eine Auflistung ist, empfehle ich dir dringend, dir hierfür passende Klassen anzulegen.

Schließlich arbeitest du hier mit einer objektorientierten Programmiersprache, also mach's auch objektorientiert.

Das hab ich mal schnell so hingeklatscht, damit du siehst, in welche Richtung meine Gedanken gehen.
Java:
class Kiste {
    int wasAuchImmerInFeld0Stand;
    String description = "";
    final IntDimension3D dimension = new Dimension3D;
    //dazu noch Getter und Setter. setDescription sollte null-Werte durch "" ersetzen
    //setDimension sollte dimension.setSize(...) aufrufen
}
class IntDimension3D {
    int length;
    int width;
    int height;
    //getter, setter
    void setSize(IntDimension3D dimension) {
        if (dimension != null) {
            setDimension(dimension.getX(),dimension.getY(),dimension.getHeight());
        } else {
            //alles auf 0 setzen?
        }
    }
    void setSize(int length, int width, int height) {
        this.length = length;
        this.width = width;
        this.height = height;
    }
}

Dazu noch eine Liste anstatt eines Arrays, damit du Flexibel bist, was die Länge angeht

Code:
class KistenListe extends ArrayList<Kiste> {
  public boolean hasKisten() {
      return !isEmpty();
  }
}


//im Programm dann
Kiste kiste = new Kiste();
kiste.setwasAuchImmerInFeld0Stand(15);
kiste.setDescription("Nix drin");
kiste.setDimension(750,80,40);
kistenListe.add(kiste);

//Damit hast du anstatt eines bescheuerten int-Arrays eine Liste von Kisten mit Eigenschaften.
Einen Index müssen die Kisten übrigens nicht haben, wenn die Position in der Liste mit diesem übereinstimmt.
kistenListe.indexOf(meineKiste) liefert die Position.


Heh, ich seh gerade im OP, dass es ein Array sein muss, nvm then. Nimm das aber trotzdem als Anregung für die Zukunft.
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
F Frage betreff Programmierbücher zu Lagerverwaltung als Konsolenprogramm Java Basics - Anfänger-Themen 3
R Java (Eclipse) "Lagerverwaltung" HILFE Java Basics - Anfänger-Themen 13
C Lagerverwaltung Java Basics - Anfänger-Themen 5
C 2dimensionales array, Lagerverwaltung Java Basics - Anfänger-Themen 64
B Lagerverwaltung Java Basics - Anfänger-Themen 45
X Lagerverwaltung mit mehrdimensionalen Array Java Basics - Anfänger-Themen 13
P Lagerverwaltung umsetzung Java Basics - Anfänger-Themen 10
T Hilfe! --> Lagerverwaltung Java Basics - Anfänger-Themen 5
A exe Datei erstellen Java Basics - Anfänger-Themen 8
J Packages erstellen Java Basics - Anfänger-Themen 7
Athro-Hiro Weißes Bild in Java erstellen Java Basics - Anfänger-Themen 3
H Excel-Tabellen mit Java erstellen Java Basics - Anfänger-Themen 4
D MacOS: PDF erstellen geht nicht Java Basics - Anfänger-Themen 1
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
P Welches SDK für das erstellen einer ausführbaren Datei? Java Basics - Anfänger-Themen 4
I Klassen von einem package laden, Statisches Feld auslesen und Objekt erstellen Java Basics - Anfänger-Themen 8
C Gewinnspiel erstellen mit Algorithmus Java Basics - Anfänger-Themen 3
Ostkreuz Spielfeld Schatz erstellen Java Basics - Anfänger-Themen 5
I Erste Schritte Einfache Datenbank-Webseite erstellen als Nicht-IT-lerin Java Basics - Anfänger-Themen 24
T Objekte mit arrays erstellen Java Basics - Anfänger-Themen 6
B Klasse statisch erstellen da n-mal geladen Java Basics - Anfänger-Themen 3
laxla123 Dreieck erstellen Java Basics - Anfänger-Themen 1
XWing Random Punkte erstellen mit der Random klasse Java Basics - Anfänger-Themen 15
A Passwort erstellen Java Basics - Anfänger-Themen 3
S CVS erstellen Java Basics - Anfänger-Themen 1
RashAGhul Java Verwaltungstool Erstellen mit kaum Wissen Java Basics - Anfänger-Themen 9
K warum kann ich das Objekt nicht erstellen ? Java Basics - Anfänger-Themen 2
paulen1 Best Practice "Unchecked Assignment" Warnung beim erstellen eines 2D Arrays of Arraylists Java Basics - Anfänger-Themen 2
dennis_lnz Klassen Wie kann ich mein Java Textadventure verbessern, um ein Klassendiagramm zu erstellen? Java Basics - Anfänger-Themen 9
dcHost Java Kara Sensor erstellen Java Basics - Anfänger-Themen 1
JustAProgrammer Ein Dreieck mit Arrays erstellen Java Basics - Anfänger-Themen 2
C GLOOP Problem beim Erstellen der Kamera Java Basics - Anfänger-Themen 9
N Array beim erstellen mit Werten füllen Java Basics - Anfänger-Themen 6
F abbruch Exception lässt sich nicht erstellen Java Basics - Anfänger-Themen 2
U JList erstellen Java Basics - Anfänger-Themen 2
X Wie kann man ein Regex erstellen, die 8-Bit-Binär-Zahlen darstellen. Java Basics - Anfänger-Themen 1
httprt Probleme bei dem erstellen von leveln in meinem Spiel Java Basics - Anfänger-Themen 2
frager2345 Programm erstellen ohne Autoboxing und Unboxing Java Basics - Anfänger-Themen 13
berserkerdq2 IO Streams logfile erstellen und Sachen schreiben wie? Java Basics - Anfänger-Themen 2
B Teilprofil erstellen Java Basics - Anfänger-Themen 1
B Teilprofil erstellen Java Basics - Anfänger-Themen 1
I String Kombination erstellen anhand fortlaufender Zahl (Vertragsnummer) Java Basics - Anfänger-Themen 13
N 2D Array Summe erstellen Java Basics - Anfänger-Themen 6
T Log Funktion erstellen Java Basics - Anfänger-Themen 1
Dorfschmied Kartesisches Produkt von zwei Liste mit Hashmaps<String,String> erstellen Java Basics - Anfänger-Themen 4
S Programm erstellen Java Basics - Anfänger-Themen 3
S MinMax Programm erstellen Java Basics - Anfänger-Themen 4
S Mit for-Schleife ein 2D JLabel-Array mit veränderbaren Icons erstellen Java Basics - Anfänger-Themen 3
T Countdown erstellen Java Basics - Anfänger-Themen 7
I ZIP File erstellen Java Basics - Anfänger-Themen 10
L Ordner in neuen erstellten Ordner erstellen Java Basics - Anfänger-Themen 12
C Fehler beim erstellen eines Objektes Java Basics - Anfänger-Themen 3
B Zurück Button erstellen Java Basics - Anfänger-Themen 1
B JaxB - Referenzen erstellen? Java Basics - Anfänger-Themen 2
K Rekursion: Rechenmauer mit Array erstellen Java Basics - Anfänger-Themen 17
alice98 Erste Schritte Liste erstellen ohne vorgefertigte Klassen Java Basics - Anfänger-Themen 1
Aqtox Hallo ich muss für die Schule ein Wuerfell Duell erstellen jedoch habe ich ein fehler Java Basics - Anfänger-Themen 4
E Classpath Datai erstellen Java Basics - Anfänger-Themen 3
B eine methode erstellen Java Basics - Anfänger-Themen 7
I Entity erstellen, die für API gedacht ist Java Basics - Anfänger-Themen 33
M Packages erstellen mit Java-Editor Java Basics - Anfänger-Themen 6
L FinanzApp erstellen Java Basics - Anfänger-Themen 1
J Junit4 Klasse erstellen Java Basics - Anfänger-Themen 5
B Warteschlange erstellen mit LinkedList ? Java Basics - Anfänger-Themen 6
Animal-Mother BMI Rechner erstellen für W/M Java Basics - Anfänger-Themen 7
F GSON file mit einer List erstellen Java Basics - Anfänger-Themen 2
Ray19941 Über BlueJ Textdatei selbstständig erstellen lassen Java Basics - Anfänger-Themen 2
J Java Queue mit default Werten erstellen Java Basics - Anfänger-Themen 4
JaVaN0oB Bruchklasse erstellen Java Basics - Anfänger-Themen 9
N Kreismuster auf Bestehendem Kreis erstellen Java Basics - Anfänger-Themen 10
K Rahmen erstellen mit mehrdimensionalem Array Java Basics - Anfänger-Themen 1
B Hilfe bei Map Liste erstellen Java Basics - Anfänger-Themen 10
F Adjunkte Matrix erstellen Java Basics - Anfänger-Themen 3
J Objekt-Array dynamischer Länge aus Benutzereingaben erstellen Java Basics - Anfänger-Themen 6
T Startbildschirm für ein Spiel erstellen Java Basics - Anfänger-Themen 0
C Probleme mit dem Erstellen und Importieren von Packages Java Basics - Anfänger-Themen 6
GermanPie Discord Text Channel erstellen? Java Basics - Anfänger-Themen 1
K Objektdiagramm erstellen Java Basics - Anfänger-Themen 3
C Wie kann ich Versionen eines Projektes in Eclipse erstellen? Java Basics - Anfänger-Themen 3
D Klassen Klassendiagramm richtig erstellen Java Basics - Anfänger-Themen 20
S Objekte indiziert erstellen Java Basics - Anfänger-Themen 27
C eigene Methoden erstellen (Instanzmethoden) Java Basics - Anfänger-Themen 7
B Methode für jede beliebe Entity erstellen Java Basics - Anfänger-Themen 7
E Filmsammlung erstellen Java Basics - Anfänger-Themen 6
B Eine Methode erstellen Java Basics - Anfänger-Themen 3
M Erstellen eines insets Objekts, GridBagLayout Java Basics - Anfänger-Themen 13
I ArrayList erstellen innerhalb einer Zeile? Java Basics - Anfänger-Themen 3
N String N-Gramme mit Stream erstellen Java Basics - Anfänger-Themen 7
K Quersumme erstellen Java Basics - Anfänger-Themen 7
M Wie kann ich ein Objekt erstellen, wenn sich der Klassenname in einer Variablen befindet? Java Basics - Anfänger-Themen 10
D Input/Output Mehrzeiligen String aus Textdatei erstellen Java Basics - Anfänger-Themen 5
C Erstellen eines Widerstandsnetzwerks Java Basics - Anfänger-Themen 10
B Neue Liste erstellen, wenn Objekte bestimmte Referenz hat / Gruppierung von Einträgen Java Basics - Anfänger-Themen 12
A Taschenrechner mit Gui erstellen Java Basics - Anfänger-Themen 9
S Variablen Variablen in einer Schleife erstellen lassen Java Basics - Anfänger-Themen 11
S Hilfe : Unendlich viele Zufallszahlen erstellen? Java Basics - Anfänger-Themen 8
P Arrays "automatisch" erstellen lassen Java Basics - Anfänger-Themen 12
L Baum aus Integer Liste erstellen Java Basics - Anfänger-Themen 0
M Regex für bestimmte Wörter bzw. bestimmte Zeichen erstellen Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben