2dimensionales array, Lagerverwaltung

Codix

Bekanntes Mitglied
Ich bin am Lösen folgender Aufgabe:

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 Ein
gabe 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 ver
waltet 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 set-zen.

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.


Lösungsansatz:

mehrdimensionales Array, welches in main angelegt wird.

Entwurf (zum Verständnis):

int[][] kistenArray= {{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 28, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, bis 75}, { Breite 75*}, {Länge 75*}, {Höhe 75*}};

also ist die Ausgabe für die erste Kiste z.B.:
1. [] es gibt ja 4 innere Arrrays, also muss in der ausgabe die erste Zahl der Zahl einer der inneren arrays entsprechen. index 0-3
2. [] muss dem index in dem ausgewählten array (1 von den 4) entsprechen, welcher index in dem ausgewählten array. index 0-74 (welche Kiste Nr. Länge, Breite, Höhe welcher kiste)

Bsp.:
[0][50] = 51.te Kiste
[1][49] = Breite der 50.ten Kiste, weil Breite ja in der 2.ten array = index 1 steht.


ich habe jetzt hier etwas zusammengecoded (noch fehlerhaft), es soll der Entwurf sein.

Entwurf des Codes:


Code:
public class Kistenaufgabe {
public static void main(String[] args) {
//ein 2D Array für int mit 75 Elementen
int[] [] kistenArray = new int[4][75];
//zwei int-Variablen für die Suche
int suche, treffer;

for (int element = 0; element < kisteArray.length; element++)
kisteArray [element]=Integer.parseInt
JOptionPane.showInputDialog

suche = Integer.parseInt(JOptionPane.showInputDialog
("Geben Sie bitte die  " + (element + 1) + "gesuchten Kiste ein"));
treffer = Arrays.binarySearch(kistenArray, suche);
if (treffer < 0 | 75)
//bitte in einer Zeile eingeben
System.out.println("ie gesuchte Kiste wurde nicht gefunden");
else
//bitte in einer Zeile eingeben
System.out.println("Die gesuchte Kiste befindet sich an der Position " + (treffer + 1));
System.exit(0);
}
}

Bitte um eure Unterstützung bei der Lösung dieser Aufgabe.

Wie soll ich meinen Code verbessern, welcher ansatz passt und welcher ist unangebracht und muss abgeändert werden.

Falls jemand die komplette Aufgabenlösung hat, bitte posten. Das wäre super.

Danke im Voraus

Codix





Nochmals, die Überlegungen zu der Aufgabe:

die Überlegungen zum Lösen der einzelnen Aufgabenteile sind in Lila.

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


public class Lagerverwaltung


eine eindeutige Nummer zur Identifikation jeder einzelnen Kiste,

kisteNr1 (vllt von 1 bis 75) Schleife


Lagerverwaltung kiste = new kiste (breite,länge,höhe)



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 Ein
gabe 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 ver
waltet werden können.
Das Programm soll folgende Funktionen anbieten:

Eingabe einer neuen Kiste,


JOption.Pane Methode


Löschen der Daten einer vorhandenen Kiste,

kiste.löschen Methode


Ändern der Daten einer vorhandenen Kiste,

kiste.datenÄndern methode

Anzeigen der Daten einer vorhandenen Kiste und

kiste.datenAnzeigen methode

eine Listenfunktion, die die Daten aller vorhandenen Kisten anzeigt.

vllt davor alle Kisten als eine Variable anlegen

kisten.datenAnzeigen

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.

mehrdimensionales Array anlegen in der main()


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.

if, else Schleife,
if 0, dann löschen
else 1-75, anweisung: anzeigen, Ändern methode anwenden



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

?
 

MoxxiManagarm

Top Contributor
Entwurf (zum Verständnis):

int[][] kistenArray= {{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 28, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, bis 75}, { Breite 75*}, {Länge 75*}, {Höhe 75*}};
Aus Sicht der Objektorientierung würde ich sagen "hell no", aber wenn ich deine Aufgabe weiter lese, dann ist das vielleicht zu schulischen Zwecken tatsächlich so gewollt.

(objektorientierter Ansatz: Daten in einer Klasse Kiste speichern und ein Array von Kisten anlegen. Da es mehrdimensional sein und 75 Einträge haben soll bietet sich eigentlich nur 3*25, 5*15 oder meinetwegen auch 3*5*5 an.)

---

Bitte verwende Java Code Tags [code=java]CODE[/code], das macht den Code leserlicher für uns und erhöht die Chance, dass dir jemand hilft.

---

Falls jemand die komplette Aufgabenlösung hat, bitte posten. Das wäre super.

Niemals! Hier ist Hilfe zur Selbsthilfe angesagt. Am besten du postest deinen vorhandenen Code. Einzelne Codestellen bessern wir dir gerne mit Erklärung aus.
 

temi

Top Contributor
Überlege dir, welche Dimension dein Array haben muss. Im geforderten Fall benötigst du Platz für 75 Kisten, das entspräche z.B. den Zeilen einer Tabelle. Für jede Kiste sollen eine Id, Breite, Länge und Höhe gespeichert werden, also vier Daten, das entspräche dann den Spalten der Tabelle. Eine Tabelle hat wieviele Dimensionen?

Code:
             id   b    l    h
Kiste 1    |    |    |    |    |
Kiste 2    |    |    |    |    |
...
Kiste 75   |    |    |    |    |
 

temi

Top Contributor
Einen Vorschlag hätte ich noch zur Id. Da du die Art der Id selbst wählen darfst, könnte sich anbieten, ganz einfach die Indexposition im Array dafür herzunehmen. Bei 75 Kisten gehen die Ids demnach von 0 - 74. Dann brauchst du eine Spalte weniger.
 

temi

Top Contributor
Überlege dir, welche Dimension dein Array haben muss. Im geforderten Fall benötigst du Platz für 75 Kisten, das entspräche z.B. den Zeilen einer Tabelle. Für jede Kiste sollen eine Id, Breite, Länge und Höhe gespeichert werden, also vier Daten, das entspräche dann den Spalten der Tabelle. Eine Tabelle hat wieviele Dimensionen?

Code:
             id   b    l    h
Kiste 1    |    |    |    |    |
Kiste 2    |    |    |    |    |
...
Kiste 75   |    |    |    |    |
Sorry, ich habe nicht gut aufgepasst, bei dem, was du schon oben geschrieben hast. Dein Ansatz ist schon ganz in Ordnung, ich würde vielleicht die Reihenfolge tauschen, also anstatt [0][50] = 51.te Kiste lieber [50][0], weil die Nummer der Kiste in deinem Fall die führende Größe ist.

Für die Indexierung der Spalten könntest du an Konstanten denken.
Java:
public static final int BREITE = 0;
public static final int LAENGE = 1;
public static final int HOEHE = 2;

// damit geht der Zugriff auf die Höhe der 51. Kiste dann:

int hoehe = kisten[50][HOEHE];
 

Codix

Bekanntes Mitglied
Überlege dir, welche Dimension dein Array haben muss. Im geforderten Fall benötigst du Platz für 75 Kisten, das entspräche z.B. den Zeilen einer Tabelle. Für jede Kiste sollen eine Id, Breite, Länge und Höhe gespeichert werden, also vier Daten, das entspräche dann den Spalten der Tabelle. Eine Tabelle hat wieviele Dimensionen?

Code:
             id   b    l    h
Kiste 1    |    |    |    |    |
Kiste 2    |    |    |    |    |
...
Kiste 75   |    |    |    |    |
genauso habe ich das auch geplant, das ist ja genau das gleiche in der code-Form:

Entwurf (zum Verständnis):

int[][] kistenArray= {{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 28, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, bis 75}, { Breite 75*}, {Länge 75*}, {Höhe 75*}};
 

Codix

Bekanntes Mitglied
Sorry, ich habe nicht gut aufgepasst, bei dem, was du schon oben geschrieben hast. Dein Ansatz ist schon ganz in Ordnung, ich würde vielleicht die Reihenfolge tauschen, also anstatt [0][50] = 51.te Kiste lieber [50][0], weil die Nummer der Kiste in deinem Fall die führende Größe ist.

Für die Indexierung der Spalten könntest du an Konstanten denken.
Java:
public static final int BREITE = 0;
public static final int LAENGE = 1;
public static final int HOEHE = 2;

// damit geht der Zugriff auf die Höhe der 51. Kiste dann:

int hoehe = kisten[50][HOEHE];

somit ergibt sich logischerweise:
Java:
// Länge der 75.ten Kiste
int laenge = kisten[74][LAENGE];
//Breite der 59.ten Kiste
int breite = kisten[58][BREITE];
frage: wo nimmst du jetzt die Variable kisten her? Wo müssen wir kisten vorher schreiben?

var kisten?

ich dachte eher an => var kistenArray

also wie soll es denn jetzt geschrieben werden?
:)

& wo soll die indexierung der Spalten im code erscheinen?
 

temi

Top Contributor
wo nimmst du jetzt die Variable kisten her?
Das ist mein Name für das Array. Eine Kiste => kiste, mehrere Kisten (das Array) => kisten. Das findet man häufig, das die Kollektion eines Dings, einfach in der Mehrzahl benannt wird. Du kannst das Array nennen wie du willst.

Wo müssen wir kisten vorher schreiben?
Du hast doch schon Aufgaben mit Klassen gelöst, dann solltest du doch wissen, wie man Instanzvariablen deklariert. Schreibst du eigentlich immer im Pluralis Majestatis?

wie soll es denn jetzt geschrieben werden?
Meinst du jetzt wie du ein Array als Instanzvariable deklarieren kannst?

wo soll die indexierung der Spalten im code erscheinen?
Überall dort, wo du auf ein bestimmtes Merkmal einer Kiste zugreifen willst.
 

Codix

Bekanntes Mitglied
Das ist mein Name für das Array. Eine Kiste => kiste, mehrere Kisten (das Array) => kisten. Das findet man häufig, das die Kollektion eines Dings, einfach in der Mehrzahl benannt wird. Du kannst das Array nennen wie du willst.


Du hast doch schon Aufgaben mit Klassen gelöst, dann solltest du doch wissen, wie man Instanzvariablen deklariert. Schreibst du eigentlich immer im Pluralis Majestatis?

nein

Meinst du jetzt wie du ein Array als Instanzvariable deklarieren kannst?

int kisten = 75; //Deklaration einer Variablen


Überall dort, wo du auf ein bestimmtes Merkmal einer Kiste zugreifen willst.

wir brauchen eine parametrisierte Methode, welche die Kiste auf einem bestimmten Platz löscht, eine zweite parametrisierte Methode, welche die Kiste auf einem bestimmten Platz ändert.
s. Aufgabenstellung:
  1. Löschen der Daten einer vorhandenen Kiste
  2. Ändern der Daten einer vorhandenen Kiste
@temi: kannst du mir beim Erschaffen der parametrisierten Methode helfen?

Danke im Voraus
 

Codix

Bekanntes Mitglied
wir brauchen eine parametrisierte Methode, welche die Kiste auf einem bestimmten Platz löscht, eine zweite parametrisierte Methode, welche die Kiste auf einem bestimmten Platz ändert.
s. Aufgabenstellung:
  1. Löschen der Daten einer vorhandenen Kiste
  2. Ändern der Daten einer vorhandenen Kiste
Bitte helft beim Erschaffen der parametrisierten Methode
was sind eure Vorschläge?
Danke im Voraus
 

Codix

Bekanntes Mitglied
wie kriegt man/frau das hin, dass das Array nicht vorbelegt ist? Das der Anwender selber die Werte der Höhe, Länge & Breite eingeben kann?

int[][] kisten = { 1,2,3,4,5,6,7,8,9,10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29,30, 31, 32, 33, 34, 35, 36, 37, 38, 39,40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75};{hier Breite},{hier Länge},{hier Höhe};

wie soll ich diese arrays schreiben, damit es nicht vorbelegt ist & der anwender die Werte selber eingeben kann?

Vllt so:

Denkansatz zum Code:

vllt: über Eingabe JOption.Pane.. "Geben Sie die nr. der Kiste & die gewünschte Breite, Länge, Höhe ein." //Eingabefenster erscheint.

if -Schleife (if Kistennr. < 75, print.. "gewünschte Breite, Länge, Höhe)

Ausgabe: system.out.. "Nr. der Kiste & die eingetippte B, L, H) //gibt in der Konsole aus.

Danke im Voraus
 
Zuletzt bearbeitet:

temi

Top Contributor
wie kriegt man/frau das hin, dass das Array nicht vorbelegt ist?
Java:
// leeres (bzw. mit "0" vorbelegtes) Array erzeugen
int[][] kisten = new int[anzahlKisten][anzahlFelder];
Damit wird ein leeres Array erzeugt. Da es sich allerdings um ein Array von int handelt, werden alle Plätze mit "0" vorbelegt.

Das solltest du allerdings alles schon wissen...
 

temi

Top Contributor
vllt: über Eingabe JOption.Pane.. "Geben Sie die nr. der Kiste & die gewünschte Breite, Länge, Höhe ein." //Eingabefenster erscheint.

if -Schleife (if Kistennr. < 75, print.. "gewünschte Breite, Länge, Höhe)

Ausgabe: system.out.. "Nr. der Kiste & die eingetippte B, L, H) //gibt in der Konsole aus.
Du solltest dich zuerst um die Klasse "Lagerverwaltung" mit ihren Methoden und Feldern kümmern. Ob die später per Konsole oder per GUI verwendet wird, ist an dieser Stelle noch völlig irrelevant.
 

temi

Top Contributor
wir brauchen eine parametrisierte Methode, welche die Kiste auf einem bestimmten Platz löscht, eine zweite parametrisierte Methode, welche die Kiste auf einem bestimmten Platz ändert.
s. Aufgabenstellung:
  1. Löschen der Daten einer vorhandenen Kiste
  2. Ändern der Daten einer vorhandenen Kiste
@temi: kannst du mir beim Erschaffen der parametrisierten Methode helfen?

Danke im Voraus

Machst du den Kurs oder ich? Von deiner Seite sollte schon auch was kommen, dann können wir dazu noch Fragen beantworten oder dir unter die Arme greifen. Fang doch mal mit dem Grundgerüst der Klasse an und vervollständige die geforderten Dinge.

Als Starthilfe:
Java:
public class Lagerverwaltung {
 
    private final static int ANZ_KISTEN = 0; // hier Vorgabewert angeben
    private final static int ANZ_FELDER = 0; // dito
 
    private int[][] kisten = new int[ANZ_KISTEN][ANZ_FELDER];
 
 
 
    // Beispiel: Methode, um eine Kiste zu löschen.
    // Für die id wurde hier int gewählt, das steht dir ja frei, was du da nehmen möchtest
    public void kisteLoeschen(int id) {
        // code
    }
 
 
}

Jetzt bist du dran.

So könnte dann die Verwendung aussehen:
Java:
public class Main {
   
    public static void main(String[] args) {
       
        Lagerverwaltung lager = new Lagerverwaltung();
       
        // Kiste mit den Abmessungen 10x10x10 dem Lager hinzufügen und id der Kiste merken
        int id = lager.neueKiste(10,10,10);
       
        // Kiste wieder aus dem Lager löschen
        lager.kisteLoeschen(id);
       
        // ..
    }
   
}
 
Zuletzt bearbeitet:

Codix

Bekanntes Mitglied
Machst du den Kurs oder ich? Von deiner Seite sollte schon auch was kommen, dann können wir dazu noch Fragen beantworten oder dir unter die Arme greifen. Fang doch mal mit dem Grundgerüst der Klasse an und vervollständige die geforderten Dinge.

Als Starthilfe:
Java:
public class Lagerverwaltung {

    private final static int ANZ_KISTEN = 0; // hier Vorgabewert angeben
    private final static int ANZ_FELDER = 0; // dito

    private int[][] kisten = new int[ANZ_KISTEN][ANZ_FELDER];



    // Beispiel: Methode, um eine Kiste zu löschen.
    // Für die id wurde hier int gewählt, das steht dir ja frei, was du da nehmen möchtest
    public void kisteLoeschen(int id) {
        // code
    }


}

Jetzt bist du dran.




ich habe jetzt weiter gecoded:
Java:
public class Main {

    public static void main(String[] args) {
    
        Lagerverwaltung lager = new Lagerverwaltung();
    
        // Kiste mit den Abmessungen 10x10x10 dem Lager hinzufügen und id der Kiste merken
        int id = lager.neueKiste(10,10,10);
    
        // Kiste wieder aus dem Lager löschen
        lager.kisteLoeschen(id);
    
        // ..
    }

}

Java:
public class Lagerverwaltung {
  
        private final static int ANZ_KISTEN = 0; // hier Vorgabewert angeben
        private final static int ANZ_FELDER = 0; // dito
   
        private int[][] kisten = new int[ANZ_KISTEN][ANZ_FELDER];
   
   
   
        // Beispiel: Methode, um eine Kiste zu löschen.
        // Für die id wurde hier int gewählt, das steht dir ja frei, was du da nehmen möchtest
        public void kisteLoeschen(int id) {
            // code
        }
   
        public void kisteAendern(int id) {
   
    }

        public int neueKiste(int breite, int laenge, int hoehe) {
            // TODO Auto-generated method stub
            return 0;
        }
}

//unten folgen die Eingabe und Ausgabe

Hauptmethode:

Java:
public class Main {

    public static void main(String[] args) {
        // TODO Auto-generated method stub

         Lagerverwaltung lager = new Lagerverwaltung();
         
            // Kiste mit den Abmessungen 10x10x10 dem Lager hinzufügen und id der Kiste merken

//warum nimmst du hier eine best. Kiste? sollte die Klammer nicht (0,0,0)  = leer sein, damit der Anwender sie selbst mit Werten füllt (bei der
//  Eingabe)?
            int id = lager.neueKiste(10,10,10);
         
            // Kiste wieder aus dem Lager löschen
            lager.kisteLoeschen(id);
         
            // Kiste ändern
            lager.kisteAendern(id);
          
    }

}


jetzt haben wir die Methoden angelegt und die in die main übernommen.
Kannst du bitte erläutern wie die Arbeitsschritte, die wir jetzt gemacht haben heissen? Methoden angelegt und in die Main (Hauptklasse) zur Ausführung übernommen?

Danke im Voraus
 

temi

Top Contributor
warum nimmst du hier eine best. Kiste? sollte die Klammer nicht (0,0,0) = leer sein, damit der Anwender sie selbst mit Werten füllt (bei der Eingabe)?
Also erst mal ist das nur ein Beispiel. In dem Beispiel bin ich der Anwender und ich habe sie an genau dieser Stelle mit den Werten gefüllt, die ich mir gewünscht hatte. Ob du die Abmessungen einer neuen Kiste durch Konsoleneingabe oder aus einer GUI erhältst und dann die Kiste entsprechend "einlagerst" ist deine Sache. Mach es, wie du es dir wünscht, bzw. die Aufgabe es fordert:
Erstellen Sie in der Methode main() ein Auswahlmenü für den Zugriff auf die einzelnen Funktionen der Lagerverwaltung.

jetzt haben wir die Methoden angelegt und die in die main übernommen.
Da fehlen aber noch zwei Methoden:
Anzeigen der Daten einer vorhandenen Kiste und
eine Listenfunktion, die die Daten aller vorhandenen Kisten anzeigt.

Und was die Methode kisteÄndern() angeht; du übergibst die id, damit die Kiste identifiziert werden kann, aber was ist mit den zu ändernden Werte?

Kannst du bitte erläutern wie die Arbeitsschritte, die wir jetzt gemacht haben heissen?
Seltsame Frage. Was sollt ihr da machen? Einen Tätigkeitsbericht zum Thema, wie schreibe ich ein Programm?
 

Codix

Bekanntes Mitglied
Also erst mal ist das nur ein Beispiel. In dem Beispiel bin ich der Anwender und ich habe sie an genau dieser Stelle mit den Werten gefüllt, die ich mir gewünscht hatte. Ob du die Abmessungen einer neuen Kiste durch Konsoleneingabe oder aus einer GUI erhältst und dann die Kiste entsprechend "einlagerst" ist deine Sache. Mach es, wie du es dir wünscht, bzw. die Aufgabe es fordert:

Ich will es mit der Konsoleneingabe machen.


Da fehlen aber noch zwei Methoden:

welche Methoden fehlen denn?

Und was die Methode kisteÄndern() angeht; du übergibst die id, damit die Kiste identifiziert werden kann, aber was ist mit den zu ändernden Werte?

ja stimmt, dann muss der code so aussehen:


// Kiste ändern
lager.kisteAendern(id, int breite, int laenge, int hoehe);


oder?


Seltsame Frage. Was sollt ihr da machen? Einen Tätigkeitsbericht zum Thema, wie schreibe ich ein Programm?

haha :)
Ich habe die passende Formulierung nicht gefunden. Ja, es muss professionell klingen, deswegen habe ich nachgefragt. Es ist gerade für Anfänger so schwer Java zu erlernen. aus diesem Grund wusste ich nicht wie ich es benennen soll.
 

Codix

Bekanntes Mitglied
Steht doch direkt unter meiner Anmerkung.

Anzeigen der Daten einer vorhandenen Kiste (das wollte ich so machen: nach der Eingabe, kommt die Ausgabe in der Konsole, sie soll das anzeigen)

und

eine Listenfunktion, die die Daten aller vorhandenen Kisten anzeigt.

mit if ( eine best. Nr. der Kiste =>Daten einer vorhandenen Kiste werden angezeigt), else ( die gesamte Liste anzeigen)


oder

die Liste bei der Eingabe eines best. Befehls.

z.B. JOption..("Tippen Sie " + Liste + ", um die komplette Kistenliste anzeigen zu lassen."

anzeigen lassen.

ausgabe: System.. ("Liste");

was hälst du davon@temi? Danke im Voraus
 

temi

Top Contributor
Anzeigen der Daten einer vorhandenen Kiste (das wollte ich so machen: nach der Eingabe, kommt die Ausgabe in der Konsole, sie soll das anzeigen)

und

eine Listenfunktion, die die Daten aller vorhandenen Kisten anzeigt.

mit if ( eine best. Nr. der Kiste =>Daten einer vorhandenen Kiste werden angezeigt), else ( die gesamte Liste anzeigen)


oder

die Liste bei der Eingabe eines best. Befehls.

z.B. JOption..("Tippen Sie " + Liste + ", um die komplette Kistenliste anzeigen zu lassen."

anzeigen lassen.


ausgabe: System.. ("Liste");

was hälst du davon@temi? Danke im Voraus

Du solltest an deinem Textverständnis arbeiten. Die Aufgabe sagt klar und eindeutig etwas anderes.

Eine Methode, um die Daten einer Kiste anzuzeigen, und
eine Methode, um die Daten aller Kisten anzuzeigen.

An dieser Stelle brauchst du keine if..else.

Eine der beiden Methoden, benötigt einen Parameter, um die anzuzeigende Kiste zu identifizieren, die andere braucht keine Parameter.
 

Codix

Bekanntes Mitglied
Also erst mal ist das nur ein Beispiel. In dem Beispiel bin ich der Anwender und ich habe sie an genau dieser Stelle mit den Werten gefüllt, die ich mir gewünscht hatte. Ob du die Abmessungen einer neuen Kiste durch Konsoleneingabe oder aus einer GUI erhältst und dann die Kiste entsprechend "einlagerst" ist deine Sache. Mach es, wie du es dir wünscht, bzw. die Aufgabe es fordert:



Da fehlen aber noch zwei Methoden:


Und was die Methode kisteÄndern() angeht; du übergibst die id, damit die Kiste identifiziert werden kann, aber was ist mit den zu ändernden Werte?


Seltsame Frage. Was sollt ihr da machen? Einen Tätigkeitsbericht zum Thema, wie schreibe ich ein Programm?

ich denke: wir haben die Instanz erzeugt der Variablen erzeugt:

Code:
         Lagerverwaltung lager = new Lagerverwaltung();


Um eine Instanz zu erzeugen, legen wir eine Variable mit dem Typ der Klasse (hier: Lagerverwaltung) an.

Das Erzeugen der Instanz erfolgt mit dem Operator "new", dem Namen der Klasse und den () Klammern.

Der Zugriff auf die Methoden erfolgt durch den Bezeichner der Variablen für die Instanz, einen trennenden Punkt und den Namen der Methoden.


Code:
// warum heisst das int id = ..  & nicht einfach lager.neueKiste(10..);.
//warum ist das int id davor? 

 int id = lager.neueKiste(10,10,10);

        

            // Kiste wieder aus dem Lager löschen

            lager.kisteLoeschen(id);

        

            // Kiste ändern

            lager.kisteAendern(id);

frage: s. code:
// warum heisst das int id = .. & nicht einfach lager.neueKiste(10..);.
//warum ist das int id davor?

Danke im Voraus.
 

temi

Top Contributor
warum heisst das int id = .. & nicht einfach lager.neueKiste(10..);
Das was du geschrieben hast geht auch, du musst den Rückgabewert ja nicht verwenden. Ich habe mich entschieden, die id der erstellten Kiste zu "merken", damit ich in der Methode kisteLoeschen() wieder darauf zurück greifen kann.

Die id der neuen Kiste wird ja innerhalb der Klasse Kiste erzeugt (sagt die Aufgabe). Du kannst also nicht im Voraus wissen, welche id die nächste neue Kiste haben wird. Darum könnte es sinnvoll sein, dass die Methode neueKiste() als Rückgabewert die erzeugte id liefert. Wie die id aufgebaut ist, kannst du ja selbst festlegen, hier ist es ein int, du kannst z.B. auch String wählen.

Für deine Aufgabe reicht es wahrscheinlich über den Aufruf der Methode alleKistenAusgeben() eine Liste der vorhandenen Kisten, inkl. deren ids zu erhalten. Damit kann der Benutzer auch die gewünschte Kiste ermitteln.
 

Codix

Bekanntes Mitglied
Das was du geschrieben hast geht auch, du musst den Rückgabewert ja nicht verwenden. Ich habe mich entschieden, die id der erstellten Kiste zu "merken", damit ich in der Methode kisteLoeschen() wieder darauf zurück greifen kann.

Die id der neuen Kiste wird ja innerhalb der Klasse Kiste erzeugt (sagt die Aufgabe). Du kannst also nicht im Voraus wissen, welche id die nächste neue Kiste haben wird. Darum könnte es sinnvoll sein, dass die Methode neueKiste() als Rückgabewert die erzeugte id liefert. Wie die id aufgebaut ist, kannst du ja selbst festlegen, hier ist es ein int, du kannst z.B. auch String wählen.

Für deine Aufgabe reicht es wahrscheinlich über den Aufruf der Methode alleKistenAusgeben() eine Liste der vorhandenen Kisten, inkl. deren ids zu erhalten. Damit kann der Benutzer auch die gewünschte Kiste ermitteln.

somit haben wir die Methode, um Daten aller Kisten anzuzeigen :)

Code:
//in der public class Lagerverwaltung

alleKistenausgeben()



//in der main class dann so aufrufen, weil wir die Instanz der class bereits erzeugt haben :


lager.alleKistenAusgeben()

Die Methode, um Daten einer Kiste anzuzeigen wäre hiermit:

Code:
//in der public class Lagerverwaltung

kisteAusgeben()



//in der main class dann so aufrufen, weil wir die Instanz der class bereits erzeugt haben :


lager.kisteAusgeben(id)
 

Codix

Bekanntes Mitglied
Codeentwurf zu dem, was bis jetzt hier im thread besprochen wurde:

Code:
public class Lagerverwaltung {
 
    private final static int ANZ_KISTEN = 75; // hier Vorgabewert angeben
    private final static int ANZ_FELDER = 3; // dito

    private int[][] kisten = new int[75][3];



    // Beispiel: Methode, um eine Kiste zu löschen.
    // Für die id wurde hier int gewählt, das steht dir ja frei, was du da nehmen möchtest
    public void kisteLoeschen(int id) {
        // code
    }
 
public void alleKistenausgeben(){

}
 
  public void kisteAusgeben(int id){
   
  }

}

 
public class Main {

    public static void main(String[] args) {
   
        Lagerverwaltung lager = new Lagerverwaltung();
   
        // Kiste mit den Abmessungen 10x10x10 dem Lager hinzufügen und id der Kiste merken
        int id = lager.neueKiste(10,10,10);
   
        // Kiste wieder aus dem Lager löschen
        lager.kisteLoeschen(id);
     
        // Kiste ändern
        lager.kisteAendern(id);
   
//alle Kisten anzeigen lassen
lager.alleKistenAusgeben();

// bestimmte Kiste anzeigen lassen
lager.kisteAusgeben(id);
 
    }

}

JOptionPane.showInputDialog(" hier das gewünschte Kommando: a für kiste loeschen, b für kiste aedern, c für alle Kisten ausgeben, d für bestimmte Kiste ausgeben ")

hier vllt die switch-Schleife:
case: a
case: b
case: c
case: d

      System.out.println(a,b,c oder d);
    }
}

bitte um eure Antworten, Vorschläge

Danke im Voraus
 

temi

Top Contributor
Ich habe es oben schon einmal geschrieben und schreibe es noch einmal: Lass erst mal die GUI (also die Sachen mit JOptionPane usw.) weg und kümmere dich um deine Klasse Lagerverwaltung.

Implementiere die Methoden und probiere sie über einen entsprechenden Aufruf in der main() aus. Wenn alles funktioniert, wie gewünscht, dann kommt die "Bedienoberfläche" mit den Auswahlmenü.

Noch ein Beispiel dafür wie, ich das meine:
Java:
public class Mathe {
   
    public int addiere(int a, int b) {
        return  a + b;
    }
}

public class Test {
   
    public static void main(String[] args) {
       
        Mathe m = new Mathe();
       
        // Die erwartete Ausgabe wäre "10"
        System.out.println(m.addiere(5,5));
    }
}

So machst du das mit all deinen Methoden der Klasse Lagerverwaltung.
 

Codix

Bekanntes Mitglied
Ich habe es oben schon einmal geschrieben und schreibe es noch einmal: Lass erst mal die GUI (also die Sachen mit JOptionPane usw.) weg und kümmere dich um deine Klasse Lagerverwaltung.

Implementiere die Methoden und probiere sie über einen entsprechenden Aufruf in der main() aus. Wenn alles funktioniert, wie gewünscht, dann kommt die "Bedienoberfläche" mit den Auswahlmenü.

Noch ein Beispiel dafür wie, ich das meine:
Java:
public class Mathe {
  
    public int addiere(int a, int b) {
        return  a + b;
    }
}

public class Test {
  
    public static void main(String[] args) {
      
        Mathe m = new Mathe();
      
        // Die erwartete Ausgabe wäre "10"
        System.out.println(m.addiere(5,5));
    }
}

So machst du das mit all deinen Methoden der Klasse Lagerverwaltung.

ich probies gleich aus & melde mich dann! :)
 

Codix

Bekanntes Mitglied
ich probies gleich aus & melde mich dann! :)
Code:
public class Lagerverwaltung {
    private final static int ANZ_KISTEN = 75; // hier Vorgabewert angeben
    private final static int ANZ_FELDER = 3; // dito

    private int[][] kisten = new int[75][3];



    // Beispiel: Methode, um eine Kiste zu löschen.
    // Für die id wurde hier int gewählt, das steht dir ja frei, was du da nehmen möchtest
    public void kisteLoeschen(int id) {
        // code
    }
 
  public void kisteAusgeben(int id){
  
  }

public void alleKistenAusgeben() {
    // TODO Auto-generated method stub
    
}

public void kisteAendern(int id) {
    // TODO Auto-generated method stub
    
}

public int neueKiste(int i, int j, int k) {

    // vllt muss hier return: i, j, k; stehen, ich bekomme darauf eine Fehlermeldung
    return 0;
}

}




public class Main {

    public static void main(String[] args) {
  
        Lagerverwaltung lager = new Lagerverwaltung();
  
        // Kiste mit den Abmessungen 10x10x10 dem Lager hinzufügen und id der Kiste merken
        int id = lager.neueKiste(10,10,10);
  
        // Kiste wieder aus dem Lager löschen
        lager.kisteLoeschen(id);
    
       // Kiste ändern
       lager.kisteAendern(id);
  
//alle Kisten anzeigen lassen
lager.alleKistenAusgeben();

// bestimmte Kiste anzeigen lassen
lager.kisteAusgeben(id);

//egal welche Methode ich hier eintippe =>Fehler
System.out.println(lager.kisteAendern(54));
    }

}

Fehler! Ich kann nichts ausdrucken. Versch. Fehler! Was genau sollte korregiert werden? Bitte um Hilfe!
 

temi

Top Contributor
Versch. Fehler! Was genau sollte korregiert werden? Bitte um Hilfe!
Wie wäre es denn, wenn du auch ein wenig Code in deine Methodenrümpfe schreiben würdest? Der gezeigte Code ist so nicht lauffähig. Du sollst die Klasse Lagerverwaltung vollständig implementieren, nicht nur die Signaturen hinschreiben...

In deinem anderen Thema zu JavaFx hattest du geschrieben, dass du in dem Kurs fast durch bist. Da sollte das alles ein Klacks sein.

Falls dir das alles noch zu schwer fällt, dann solltest du evtl. noch mal ein paar Kapitel zurück gehen. Aufgrund deiner Fragen, habe ich den Eindruck, als wärst du etwas überfordert. Es ist schon wichtig die Themen der Reihe nach zu behandeln und auch zu verstehen, bevor man das nächste Thema beginnt.
 

Codix

Bekanntes Mitglied
Wie wäre es denn, wenn du auch ein wenig Code in deine Methodenrümpfe schreiben würdest?

Du sollst die Klasse Lagerverwaltung vollständig implementieren, nicht nur die Signaturen hinschreiben...

In deinem anderen Thema zu JavaFx hattest du geschrieben, dass du in dem Kurs fast durch bist. Da sollte das alles ein Klacks sein.

Falls dir das alles noch zu schwer fällt, dann solltest du evtl. noch mal ein paar Kapitel zurück gehen. Aufgrund deiner Fragen, habe ich den Eindruck, als wärst du etwas überfordert. Es ist schon wichtig die Themen der Reihe nach zu behandeln und auch zu verstehen, bevor man das nächste Thema beginnt.

Du meinst die Methoden vollständig implementieren?
Ich bin mit dem Kurs nicht ganz durch, habe in dem JavaFX thread was anderes gemeint (dass ich die Themen grob alle durch habe, aber sie praktisch noch nicht umsetzen kann, durchgelesen, aber noch nicht praktsich programmiert).
also 1/4wegs habe ich es drauf.

Das ist jetzt auch ein Anfängerthema, mein Niveau, ich gehe jetzt auch nicht einfach weiter und überspringe das.

JavaFX wollte ich kennenlernen, bevor ich damit anfange. Habe einen Udemy Kurs gekauft und dort einwenig JavaFX probiert. Mehr nicht. Ich bin jetzt schon noch auf diesem Niveau (Lagerverwaltung).
 

temi

Top Contributor
Du meinst die Methoden vollständig implementieren?
Wie willst du eine Methode testen (also ausprobieren, ob sie funktioniert), wenn du sie nicht vollständig implementierst? Aber: Ja, genau das.

Du kannst natürlich mit einer Methode z.B. neueKiste() beginnen und diese zuerst testen und so Schritt für Schritt alle Methoden bearbeiten. Sinnvoll wäre (auch zum Testen) danach die Methode alleKistenAusgeben() zu nehmen. Der Test wäre dann eine oder mehrere Kisten einzulagern und danach auszugeben, ob sie auch im Lager sind. Wenn das gut klappt kannst du weiter machen.
 

Codix

Bekanntes Mitglied
Methoden implementieren: den genauen code in die Methoden reinschreiben?
z.B.: Code zum Ändern der Kiste.
Code zum alleKistenausgeben, etc.

Code:
..
    public void kisteLoeschen(int id) {
        // Code in die Anweisungsblöcke der Methoden reinschreiben = Implementieren?
    }

public void alleKistenausgeben(){
//soll ich 75 hier reinschreiben?
}

  public void kisteAusgeben(int id){
   //Kisten id?
  }

}

bitte um ein Bsp. oder die korrekte Befüllung. Ich verstehe es an Beispielen am besten. Habe online leider nichts zu (Implementierung der Methoden) gefunden. Hast du gute Links?

oder sollte ich die Implememntierung nicht in main class vornehmen?

Aber wir haben 75 Kisten. Wenn es 1 Kiste wäre, dann könnte ich es machen, aber mit 75 noch nicht.
Habs noch nicht drauf.
 

Codix

Bekanntes Mitglied
Code:
public class Lagerverwaltung {

    private final static int ANZ_KISTEN = 75; // hier Vorgabewert angeben

    private final static int ANZ_FELDER = 3; // dito



    private int[][] kisten = new int[75][3];

    private int id;







    // Beispiel: Methode, um eine Kiste zu löschen.

    // Für die id wurde hier int gewählt, das steht dir ja frei, was du da nehmen möchtest

    public void kisteLoeschen(int id) {

        this.id = id;

        // code

    }



  public void kisteAusgeben(int id){

   this.id = id;

  }



public void alleKistenAusgeben() {

    // hierzu fällt mir nichts ein, was soll denn alle Kisten repräsentieren? Welche Variable?

 

}



public void kisteAendern(int id) {

 

    this.id = id;

}



public int neueKiste(int i, int j, int k) {



    // vllt muss hier return: i, j, k; stehen, ich bekomme darauf eine Fehlermeldung

    return neueKiste(0, 0, 0);

}



}







public class Main {



    public static void main(String[] args) {

 

        Lagerverwaltung lager = new Lagerverwaltung();

 

        // Kiste mit den Abmessungen 10x10x10 dem Lager hinzufügen und id der Kiste merken

        int id = lager.neueKiste(10,10,10);

 

        // Kiste wieder aus dem Lager löschen

        lager.kisteLoeschen(id);

  

       // Kiste ändern

       lager.kisteAendern(id);

 

//alle Kisten anzeigen lassen

lager.alleKistenAusgeben();



// bestimmte Kiste anzeigen lassen

lager.kisteAusgeben(id);







//egal welche Methode ich hier eintippe =>Fehler



// The method println(boolean) in the type PrintStream is not applicable for the arguments (void)



System.out.println(lager.kisteLoeschen(64));

    }



}

ich habs nochmals versucht, zu implementieren
 

Codix

Bekanntes Mitglied
Ei, ei, ei... bei Dir fehlt aber schon wirklich jede Grundlage.

Wozu dient denn

? Was wird da gespeichert oder soll da gespeichert werden? Kannst Du das Array visualisieren?

Es sollte ein array sein 2 dimensional, mit 4 Spalten (id, Länge, Höhe, Breite). Das soll dort gespeichert werden. Ich visualisiere es als zwei.dimensionales array (also 4 Spalten).
ID rufen wir immer so ab:
Länge

[4 spalten für id, Länge, Höhe, Breite][75 zeilen für 75 Kisten]

muss es so aussehen?

private int[][] kisten = new int[4][75];
 

Codix

Bekanntes Mitglied
Du sollst nicht nach Links und Anleitungen suchen, sondern selbst denken und die Aufgabe lösen. Das ist der Sinn der ganzen Sache. Abschreiben bringt dir gar nichts.

ich muss das Ganze erstmal verstehen, wie das Implementieren funktioniert.

Bring mir doch mal ein konkretes Bsp mit Implementierungen, dann werde ich es verstehen und anwenden können.

Liege ich denn mit meinen Versuchen völlig daneben?
 

mihe7

Top Contributor
muss es so aussehen?
Muss nicht, aber Du könntest es so machen. In der Regel gibt man aber zuerst die Zeile, dann die Spalte an. Das hat einen Grund, den Du in Kürze erkennen wirst.

Für die Anzahl hast Du Konstanten definiert, die solltest Du auch verwenden: new int[ANZ_KISTEN][ANZ_FELDER].

Das Array kisten bietet nun also Platz für ANZ_KISTEN Kisten. Vergessen wir dieses Array mal für einen Moment und erstellen eine neue Kiste. Was müsstest Du schreiben, um eine (einzige) Kiste zu erstellen?
 

handshake45

Bekanntes Mitglied
Moin, ich habe die Aufgabenstellung nicht genau gelesen aber so könntest du anfangen:
Java:
import java.util.Arrays;

public class Lagerverwaltung {

	private static final int DIM_A = 75;
	private static final int DIM_B = 3;
	private int[][] kisten = new int[DIM_A][DIM_B];
	private int index = 0;

	public int size() {
		return index;
	}

	public boolean isEmpty() {
		return index == 0;
	}

	public boolean isFull() {
		return index == kisten.length;
	}

	public void add(int l, int b, int h) {
		if (isFull()) {
			throw new IllegalArgumentException("ioob");
		}
		kisten[index] = new int[] { l, b, h };
		index++;
	}

	public int[] get(int i) {
		if (i < 0 || i >= index) {
			throw new IllegalArgumentException("ioob");
		}
		return kisten[i];
	}

	public int[] del1() {
		if (isEmpty()) {
			throw new IllegalArgumentException("ioob");
		}
		index--;
		return kisten[index];
	}
	
	public void clear() {
		// TODO ...
	}

	public void print() {
		for (int i = 0; i < index; i++) {
			System.out.println(Arrays.toString(kisten[i]));
		}
	}

	public static void main(String[] args) {
		Lagerverwaltung lager = new Lagerverwaltung();
		lager.add(1, 1, 1);
		lager.add(2, 2, 2);
		System.out.println(lager.size());
		lager.add(3, 3, 3);
		lager.del1();
		lager.add(4, 4, 4);
		lager.print();
		while (!lager.isFull()) {
			lager.add(5, 5, 5);
		}
		while (!lager.isEmpty()) {
			lager.del1();
		}
		System.out.println(lager.size());
	}
}
Und dann noch der Hinweis dass man auch mit kisten[i][j] = ... auf ein einzelnes Element an der Stelle (i,j) im Kisten-Array zugreifen kann...
 

temi

Top Contributor
Dank der tolle "Hilfe" von Tobias, hat sich alles weitere jetzt ja erledigt...
ich muss das Ganze erstmal verstehen, wie das Implementieren funktioniert.
Normalerweise ist ein Kurs so aufgebaut, dass man in kleinen Schritten immer mehr Grundlagen lernt und diese durch Übungen, die sich im Umfang und Schwierigkeit steigern, vertieft. So du deine bisherigen Kursinhalte sauber bearbeitet hast (und nicht nur abgeschrieben), dann sollte auch diese Übung für dich machbar sein. Und zwar durch selbständige Arbeit. Das dann mal was nicht funktioniert oder man an der einen oder anderen Stelle noch Fragen hat, das ist normal und genau dafür ist dieses Forum da.

Naja, durch die freundliche "Unterstützung" von @handshake45 hat sich das Thema ja jetzt erledigt. Schreib ab und werde glücklich damit.
 

handshake45

Bekanntes Mitglied
Allerdings wird er es so nicht abgeben können. Das ist ja keine korrekte Lösung
Er müsste eben die Methodennamen und alles Weitere abändern... und ein ToDo steht dort auch noch.
Naja, durch die freundliche "Unterstützung" von @handshake45 hat sich das Thema ja jetzt erledigt. Schreib ab und werde glücklich damit.
Sorry, aber man kann auch durch Quellcode etwas lernen, wenn man möchte... Und dieses Thema soll doch nicht 100 Beiträge lang werden oder? Iwann greift eine Grenze...
Also ich finde Quellcode und Hilfen an Stellen, an den man absolut nicht weiterkommt, wohl sinnvoll; anstatt auf die Eigeninitiative zu beharren.
 

Codix

Bekanntes Mitglied
Dank der tolle "Hilfe" von Tobias, hat sich alles weitere jetzt ja erledigt...

Normalerweise ist ein Kurs so aufgebaut, dass man in kleinen Schritten immer mehr Grundlagen lernt und diese durch Übungen, die sich im Umfang und Schwierigkeit steigern, vertieft. So du deine bisherigen Kursinhalte sauber bearbeitet hast (und nicht nur abgeschrieben), dann sollte auch diese Übung für dich machbar sein. Und zwar durch selbständige Arbeit. Das dann mal was nicht funktioniert oder man an der einen oder anderen Stelle noch Fragen hat, das ist normal und genau dafür ist dieses Forum da.

Naja, durch die freundliche "Unterstützung" von @handshake45 hat sich das Thema ja jetzt erledigt. Schreib ab und werde glücklich damit.

@temi: Ich habe die lösung von handshake nicht ganz verstanden & würde die Aufgabe gern mit dir & anderen zusammen zu Ende lösen.
oder hat deine Lösung genauso wie die von handshake ausgesehen?
 

Codix

Bekanntes Mitglied
Er müsste eben die Methodennamen und alles Weitere abändern... und ein ToDo steht dort auch noch.

Sorry, aber man kann auch durch Quellcode etwas lernen, wenn man möchte... Und dieses Thema soll doch nicht 100 Beiträge lang werden oder? Iwann greift eine Grenze...
Also ich finde Quellcode und Hilfen an Stellen, an den man absolut nicht weiterkommt, wohl sinnvoll; anstatt auf die Eigeninitiative zu beharren.

Danke für deinen Lösungsvorschlag. Durch Quellcode zu lernen ist oft sehr hilfreich.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Curtis_MC 2dimensionales Array als String ausgeben Java Basics - Anfänger-Themen 2
S Klassen Objekt- Tabelle / Dynamisches 2Dimensionales Array für Objekte Java Basics - Anfänger-Themen 6
J 2Dimensionales Array, Größe durch Eingabe bestimmen Java Basics - Anfänger-Themen 9
A datei in ein 2dimensionales array einlesen? Java Basics - Anfänger-Themen 9
R 2dimensionales array um 90 grad drehen Java Basics - Anfänger-Themen 2
S 2dimensionales Array als Liste speichern Java Basics - Anfänger-Themen 19
T Array verkleinern Java Basics - Anfänger-Themen 2
J Array aus Numberfield Eingaben Java Basics - Anfänger-Themen 7
D Array List mit Objekten sortieren Java Basics - Anfänger-Themen 2
onlyxlia Anzahl Random Zahlen mit Scanner abfragen und in Array speichern Java Basics - Anfänger-Themen 10
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
Ü Zweidimensionales Array in der ersten Zeile deklarieren Java Basics - Anfänger-Themen 13
Thomas Uppe 2D Array Reihenfolge vermischen Java Basics - Anfänger-Themen 4
T array auslesen Java Basics - Anfänger-Themen 2
Nitrogames Variablen Variable aus JOptionPane Abfrage in Array einfügen Java Basics - Anfänger-Themen 4
moini Auf Array aus Superklasse zugreifen? Java Basics - Anfänger-Themen 2
J ArrayList in 2D-Array konvertieren. Java Basics - Anfänger-Themen 48
M NullPointerException: Cannot read the array length because "this.Kinder" is null Java Basics - Anfänger-Themen 1
P Wieso kann ich als Index für einen Array einen Char angeben? Java Basics - Anfänger-Themen 3
Finn_lol Fehlermeldung bei Schleife mit Array Java Basics - Anfänger-Themen 4
Proxy Chars vor array übergabe toLowerUpcase Java Basics - Anfänger-Themen 14
iAmFaiinez Primzahlen Tester ohne Array Java Basics - Anfänger-Themen 4
S array 2 dimensional treppe Java Basics - Anfänger-Themen 3
S Array 2x2 Blöcke mit 0 und 1 Java Basics - Anfänger-Themen 10
C Array von Klassen Java Basics - Anfänger-Themen 2
julian0507 2Dim-Array Spaltensummen Java Basics - Anfänger-Themen 1
XWing Doppelte Zahlen im Array Java Basics - Anfänger-Themen 8
melisax Java 2D-Array Tabelle Java Basics - Anfänger-Themen 4
melisax Java Array Wert an bestimmtem Index angeben Java Basics - Anfänger-Themen 14
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
Proxy Stack erweitern mit neuem Array falls der alte voll ist!? Java Basics - Anfänger-Themen 5
E Array, nächste Zahl zur 5 ausgeben, wie? Java Basics - Anfänger-Themen 42
J Array.list vergleichen Java Basics - Anfänger-Themen 1
W Java-Code mit Array Java Basics - Anfänger-Themen 14
D Reflections & Generisches Array Java Basics - Anfänger-Themen 4
T Array Java Basics - Anfänger-Themen 2
T Array Java Basics - Anfänger-Themen 15
T Wörteranzahl im Array zählen Java Basics - Anfänger-Themen 9
Ostkreuz Zweidimensionaler Array Index Java Basics - Anfänger-Themen 2
S String Array Buchstaben um einen gewissen Wert verschieben Java Basics - Anfänger-Themen 4
R Images aus einem Array ausgeben Java Basics - Anfänger-Themen 3
R 2d Array individuell machen Java Basics - Anfänger-Themen 4
D 2D Char Array into String Java Basics - Anfänger-Themen 2
J Array Median bestimmen Java Basics - Anfänger-Themen 6
S Array Maximum bestimmen mit for und foreach Java Basics - Anfänger-Themen 7
S Prüfen ob ein zweidimensionales Array rechteckig ist Java Basics - Anfänger-Themen 4
N Array Java Basics - Anfänger-Themen 1
J Array Mittleren Wert bestimmen Java Basics - Anfänger-Themen 2
D OOP Array einem Objekt zuweisen Java Basics - Anfänger-Themen 2
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
S Inhalte aus Array vergleichen und Max ausgeben Java Basics - Anfänger-Themen 3
M 2d array ohne längen anlegen Java Basics - Anfänger-Themen 4
S Bestimmte werte aus einem Array löschen Java Basics - Anfänger-Themen 2
S Ausgeben wie oft ein Wert in einem Array vorkommt Java Basics - Anfänger-Themen 7
E Reihenfolge der Werte umdrehen (mittels statischem int-Array Java Basics - Anfänger-Themen 3
O 2 Dimensionales Array Java Basics - Anfänger-Themen 6
M Bubble Sort - Int[] Array sortieren Java Basics - Anfänger-Themen 2
javaBoon86 Array mehrere Dimensionen Java Basics - Anfänger-Themen 10
B Array nach Elementwerten sortieren? Java Basics - Anfänger-Themen 1
B Explizit Array definieren geht nicht? Java Basics - Anfänger-Themen 14
D Kleinste Zahl in Array finden die vorher noch errechnet werden müssen. Java Basics - Anfänger-Themen 4
L Gegebenes Array sortieren, indem zufällige Zahlenpaare aus Array ausgewählt werden Java Basics - Anfänger-Themen 14
Say 2-DIM Array Code lesen und verstehen Java Basics - Anfänger-Themen 5
N Array beim erstellen mit Werten füllen Java Basics - Anfänger-Themen 6
C Java Array Struktur, welche ist wann besser? Java Basics - Anfänger-Themen 12
Temsky34 Array IndexOf nicht verfügbar Java Basics - Anfänger-Themen 18
belana wie am besten 2D Array von String to Integer Java Basics - Anfänger-Themen 18
S Array mit Methode löschen Java Basics - Anfänger-Themen 2
J Java To String Methode, Array mit For-Schleife Java Basics - Anfänger-Themen 2
E Durch Muster in Array iterieren Java Basics - Anfänger-Themen 3
L Frage zum Array Java Basics - Anfänger-Themen 1
C 2D Array Ausgabe mit for-Schleife i,j Java Basics - Anfänger-Themen 4
D Methode: Array Reihenfolge tauschen Java Basics - Anfänger-Themen 3
julian0507 Array aus Methode in anderer Methode sichtbar machen Java Basics - Anfänger-Themen 10
P Array vom Typ Klasse Java Basics - Anfänger-Themen 18
Lion.King Array deklarieren und initialisieren Java Basics - Anfänger-Themen 5
P Array-Objekte-Aufruf Java Basics - Anfänger-Themen 22
A CSv.Datei einlesen und die werte in zweidemosional Int Array speichern Java Basics - Anfänger-Themen 9
M Methoden Zweidimensionaler Array mit Setter Methode ändern Java Basics - Anfänger-Themen 4
AkiJou Zeile in 2d Array löschen Java Basics - Anfänger-Themen 2
LilliCherry Array in einer Zeile ausgeben Java Basics - Anfänger-Themen 6
A Elemente in einem Array Java Basics - Anfänger-Themen 5
A Vorkommende Farben ermittel und als Array zurückgeben Java Basics - Anfänger-Themen 7
AhmadSlack Array Java Basics - Anfänger-Themen 7
Jambolo Kartenhand Array Java Basics - Anfänger-Themen 14
ravenz Schleife mit for über String Array „zahlen“und prüfen ob Wert „a“ oder „b“ oder „c“ entspricht (mittels || ) Java Basics - Anfänger-Themen 4
S Eine Variable in einem Array speichern Java Basics - Anfänger-Themen 5
T Methode, die prüft ob in einem Int-Array maximal 2 Zahlen enthalten sind, die größer als ihr Vorgänger sind Java Basics - Anfänger-Themen 5
T String Array Fehler beim Index Java Basics - Anfänger-Themen 3
krgewb byte-Array, das ein Bild repräsentiert Java Basics - Anfänger-Themen 1
1 Array rekursiv durchlaufen Java Basics - Anfänger-Themen 8
I Methoden Wieso wird mein Array "a" verändert und meine Variable "a" nicht? Java Basics - Anfänger-Themen 4
EykS 3D Druckdatei basierend auf 3D Array? Java Basics - Anfänger-Themen 3
sserio Array funktioniert nicht Java Basics - Anfänger-Themen 2
sserio Iterierung über ein zweidimensionales Array Java Basics - Anfänger-Themen 16
sserio Zweidimensionales Array [][] wird untereinander ausgegeben Java Basics - Anfänger-Themen 14
Chris.089 2 Werte im Array tauschen Java Basics - Anfänger-Themen 6
D EinMalEins mithilfe einer for-Schleife und Array Java Basics - Anfänger-Themen 1
L Unbekanntes Problem mit 2d Array Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben