set methode bei Array

dascoco

Mitglied
Hallo ich habe ein Array von Zutaten und ich möchte jetzt in meiner Methode addZutat
in jedes Feld eine Zutat setzen. Kann mir jemand sagen wie ich da auf die einzelnen Felder zugreife? Also jedesmal wenn die Methode aufgerufne wird soll auf das nnächste Feld zugegriffen werden.

Java:
    public Zutat addZutat(Getraenke getraenk,Zutat Zutat){
       getraenk.setZutat(Zutat);
       return Zutat;
    }
 

Volvagia

Top Contributor
Eine Zählvariable anlegen und nach jeden Feldzugriff um 1 hochzählen. Oder eine Collection. ArrayLists kannst du mit einer bestimmten Größe initializieren.
 

dascoco

Mitglied
Danke, die Idee ist mir auch gerade gekommen, das problem ist jetzt noch das ich nicht weiss wie ich richtig auf ein Feld zugreife über die Set Methode, so wie ich sie jetzt habe bekomme ich folgenden Fehler.

Code:
method setZutat in class Getraenke cannot be applied to given types;
  required: Zutat[]
  found: Zutat
  reason: actual argument Zutat cannot be converted to Zutat[] by method invocation conversion
 

Volvagia

Top Contributor
Zeig mal den Code. Sowas sagt mir nichts, mir sitzt immer Eclipse im Nacken das mir sofort sagt falls ich da nen Fehler mache. !_!
 

JavaProfi

Aktives Mitglied
Danke, die Idee ist mir auch gerade gekommen, das problem ist jetzt noch das ich nicht weiss wie ich richtig auf ein Feld zugreife über die Set Methode, so wie ich sie jetzt habe bekomme ich folgenden Fehler.

Code:
method setZutat in class Getraenke cannot be applied to given types;
  required: Zutat[]
  found: Zutat
  reason: actual argument Zutat cannot be converted to Zutat[] by method invocation conversion

Deine Methode setZutat erwartet als Parameter ein Array,
du übergibts aber ein einzelnes Zutat-Objekt.

Gruß
JP
 

dascoco

Mitglied
Ich möchte auch nur ein einzelnes Objekt übergeben.


Java:
public class Getraenke {

    private Zutat[] zutat = new Zutat[2];

    public Zutat addZutat(Getraenke getraenk,Zutat Zutat){
       getraenk.setZutat(Zutat);
       return Zutat;
    }

    public Zutat[] getZutat() {
        return zutat;
    }

    public void setZutat(Zutat[] zutat) {
        this.zutat = zutat;
    }
    
}
 

Volvagia

Top Contributor
Der Code ist mir kein bischen Klar.
1) Variablennamen klein.
2) (Arrays Mehrzahl).
3) Keine unterschiedlichen Typen in Klassen- und Methodenbereich gleich benennen. Da wird man ja irre.

4) setZutat erwartet ein Array, du übergibst eine Zutat (wie JavaProfi schon sagte, er hat sich den Namen ja schließlich nicht selbst gegeben. :D)

5) addZutat macht was? Die Zutat dem Objekt des Aufrufes hinzufügen? Oder dem Parameter? Sieht nach Parameter aus, nur wozu dann als Instancemethode? o_O
6) Deutsch und Englisch zu mischen ließt sich wie der Duden seit den letzten 10 Rechtschreibreformen.
 

JavaProfi

Aktives Mitglied
Ich möchte auch nur ein einzelnes Objekt übergeben.


Java:
public class Getraenke {

    private Zutat[] zutat = new Zutat[2];

    public Zutat addZutat(Getraenke getraenk,Zutat Zutat){
       getraenk.setZutat(Zutat);
       return Zutat;
    }

    public Zutat[] getZutat() {
        return zutat;
    }

    public void setZutat(Zutat[] zutat) {
        this.zutat = zutat;
    }
    
}

Das 'funzt' so nicht!
Du solltest dich insgesamt mit Objekten und Klassen auseinandersetzen, denn ich vermute das hast du auch noch nicht verstanden.

Hier mal ein "rapid prototyped" Code, der vermutlich das macht, was du dir vorstellst.

Java:
public class Getraenk {
		 
	    private Zutat[] zutaten = new Zutat[2];
	 
	    public void addZutat(Zutat zutat){
	    	for (int i=0;i<2;i++){
	    		if (this.zutaten[i] != null){
	    			zutaten[i] = zutat;
	    			return;
	    		}
	    	}
	    }
	 
	    public Zutat getZutat(int index) {
	        if (index < 2)
	        	return zutaten[index];
	        return null;
	    }
	 
	    public void setZutat(int index, Zutat zutat) {
	        this.zutaten[index] = zutat;
	    }
}

Gruß
JP
 
Zuletzt bearbeitet:

JavaProfi

Aktives Mitglied
Der Code ist mir kein bischen Klar.

4) setZutat erwartet ein Array, du übergibst eine Zutat (wie JavaProfi schon sagte, er hat sich den Namen ja schließlich nicht selbst gegeben. :D)

Jepp! Stimmt selbsternannt, aber deswegen nicht fehlerlos!
Aber ich mag es eben mit diesem Namen etwas zu provozieren und manchmal auch zu polarisieren.
(only just for fun) :D

Gruß an den subterranen Lavadrachen !

Gruß
JP
 
Zuletzt bearbeitet:

dascoco

Mitglied
Danke für deine Hilfe, eine frage noch. Wenn ich jetzt meine Getränk mit der Zutat ausgeben lassen will wie greife ich dann auf die einzelnen Attribute der Zutat zu?
mit
Java:
System.out.println(Getraenke.getZutat());
bekomme ich nur Zutat;@2d4b1fda
 

JavaProfi

Aktives Mitglied
Das sind nun aber wirklich Basics...

1)
Zunächst nicht mit "Getraenke" sondern mit einer Instanz der Klasse "Getraenk"
Ich nenne diese mal "myDrink"
Java:
Gertraenk myDrink = new Getraenk()
2)

System.out.println(myDrink.getZutat(0));
System.out.println(myDrink.getZutat(1));

und dann über getter-Methoden des Zutat-Objekts
Das setzt voraus, das deine Zutat-Klasse über entsprechende getter-Methoden verfügt.
also ungefähr so:

System.out.println(myDrink.getZutat(0).getAttribut());

Gruß
JP
 
Zuletzt bearbeitet:

Volvagia

Top Contributor
Mit einen Getter. z. B. Getraenke.getZutat().getName() (und ich befürchte, getZutat ist keine statische Methode. ;()

Jede Klasse außer Object erbt direkt oder indirekt von Object. Diese definiert die Methode toString(), die von System.out.println(Object) und in vielen anderen Fällen auch benutzt wird. Diese kannst du noch zusätzlich überschreiben, ist aber kein Ersatz für einen Getter!

Gruß an den subterranen Lavadrachen !
Gruß zurück. :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
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
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
M Methoden Zweidimensionaler Array mit Setter Methode ändern Java Basics - Anfänger-Themen 4
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
D Array in Main Methode aus anderer Klasse aufrufen Java Basics - Anfänger-Themen 3
A Ein Array bearbeiten und in einer anderen Methode nutzen Java Basics - Anfänger-Themen 6
M Wie kann eine Methode für ein vorhandenes "Array von char" einen Index-Wert zurückliefern? Java Basics - Anfänger-Themen 3
M Methode - Array mit Booleans füttern Java Basics - Anfänger-Themen 7
I Array einer Methode wiedergeben Java Basics - Anfänger-Themen 2
S Erklärung zur Methode und array Java Basics - Anfänger-Themen 12
L Methode Point[], Array widergeben Java Basics - Anfänger-Themen 5
N Wozu nutzt man in der Main Methode das args Array? Java Basics - Anfänger-Themen 10
T Methode schreiben, die einem Array ein Stringelement hinzufügt, wenn dieses noch nicht enthalten ist. Java Basics - Anfänger-Themen 6
T Methode um Array mit for-each-Schleife auszulesen Java Basics - Anfänger-Themen 7
J Problem mit einer Methode die gewissen Inhalt einer Array löschen soll Java Basics - Anfänger-Themen 9
J Problem mit einer Methode, die beliebig viele Objekte in Array speichern soll Java Basics - Anfänger-Themen 6
H Methode mit Array als Rückgabe This method must return a result of Type int[] Java Basics - Anfänger-Themen 2
G Erste Schritte Array Mittelwert Methode Programmieren Java Basics - Anfänger-Themen 5
C Größte Zahl aus einem Array ermitteln(als statische Methode) Java Basics - Anfänger-Themen 31
G Methoden Methode die aus einem Array ein Index ausgibt? Java Basics - Anfänger-Themen 2
kazzam94 Methode soll Array von Boolean zurückgeben Java Basics - Anfänger-Themen 5
Eule25 Methode mit Array Java Basics - Anfänger-Themen 4
J Methoden Frage: Array-Werte in anderer Methode ändern Java Basics - Anfänger-Themen 4
JD_1998 Array-Position aus einer Methode in einer anderen ausgeben (Kurze Frage) Java Basics - Anfänger-Themen 2
JD_1998 Random Array sortieren mit Hilfe einer Methode Java Basics - Anfänger-Themen 4
K Übergabe von Werten (zweidimensionales Array) aus einer Methode an zweidimensionales Array in main() Java Basics - Anfänger-Themen 3
parrot Array: Methode fügeHinzu Java Basics - Anfänger-Themen 13
J Methoden set Methode array Java Basics - Anfänger-Themen 2
B Array als Rückgabewert in der Methode Java Basics - Anfänger-Themen 1
B Ein Array an die Methode zurückgeben Java Basics - Anfänger-Themen 8
M BlueJ - Array als Paramter einer Methode eingeben Java Basics - Anfänger-Themen 12
W In Methode boolean array zurückgeben Java Basics - Anfänger-Themen 3
M Methode mit Array als Parameter an Main übergeben Java Basics - Anfänger-Themen 1
D Compiler-Fehler Array an Methode übergeben und Wert zurückbekommen Java Basics - Anfänger-Themen 3
C In einer Methode einen Array zurückgeben Java Basics - Anfänger-Themen 2
M Methode überladen - Array List Java Basics - Anfänger-Themen 5
P Input/Output Bestimmte Anzahl von Werten in einem Array an Methode übergeben Java Basics - Anfänger-Themen 2
Bluebird209 Array wird nicht an Methode übergeben Java Basics - Anfänger-Themen 7
N Methode mit While-Schleife und If-Bedingung und Array-Initialisierung Java Basics - Anfänger-Themen 4
E Methoden 2D Array wird in der Methode nicht geändert/gespeichert Java Basics - Anfänger-Themen 5
S Array Methode Java Basics - Anfänger-Themen 8
J Array - getVorherigerMonat()-Methode Java Basics - Anfänger-Themen 31
L Methoden Set Methode mit Array befüllen Java Basics - Anfänger-Themen 4
D Erste Schritte Array Werte an Methode übergeben Java Basics - Anfänger-Themen 6
O array mit Methode variabel befüllen Java Basics - Anfänger-Themen 5
kilopack15 Methode soll int-Array zurückgeben Java Basics - Anfänger-Themen 2
A Methoden Array mit Methode nacheinander füllen Java Basics - Anfänger-Themen 3
J Array ausserhalb der Methode initialisieren Java Basics - Anfänger-Themen 4
J Methode in Array Java Basics - Anfänger-Themen 4
B Wie speicher ich die Outputs einer Methode in ein Array ein? Java Basics - Anfänger-Themen 1
Tommy Nightmare void Methode gibt Array zurück Java Basics - Anfänger-Themen 3
W Methoden Methode auf Array aufrufen, und dieses Array dabei ändern? Java Basics - Anfänger-Themen 10
W Methoden In Methode Array zurückgeben? Java Basics - Anfänger-Themen 2
K Problem mit Methode(Array,Boolean,ForSchleife) Java Basics - Anfänger-Themen 6
Silvascus Array, der mit dem Namen, der per Methode übergeben wird, erstellt wird Java Basics - Anfänger-Themen 5
V Methode erstellen für ein Boolean Array Java Basics - Anfänger-Themen 13
L Methode schreiben die den maximalen Wert im Array ermittelt Java Basics - Anfänger-Themen 27
B OOP Methode mit Array mit return verlassen Java Basics - Anfänger-Themen 8
S Array und Getter-Methode Java Basics - Anfänger-Themen 2
C Array - Methode in einer anderen Aufrufen Java Basics - Anfänger-Themen 1
J Warum wird Array durch Methode ohne Rückgabewert verändert? Java Basics - Anfänger-Themen 5
K Methode aus Array abrufen Java Basics - Anfänger-Themen 7
B Methoden Array Methode aufrufen Java Basics - Anfänger-Themen 4
J 2 dimensionales Array an andere Methode übergeben? Java Basics - Anfänger-Themen 1
J Array mit neuer Methode übergeben Java Basics - Anfänger-Themen 5
U Methoden Zugriff auf Array von weiterer Methode einer Klasse, Rückgabewert Problem Java Basics - Anfänger-Themen 5
L Methoden Array an Methode übergeben Java Basics - Anfänger-Themen 1
F Teil eines Byte Array an eine Methode übergeben Java Basics - Anfänger-Themen 5
C Array aus einer Methode zurückgeben und ausgeben Java Basics - Anfänger-Themen 1
P Auf Object in Array Methode anwanden Java Basics - Anfänger-Themen 2
H Array Test Methode schreiben Java Basics - Anfänger-Themen 3
S Fehler bei Arrays.sort(array) - Methode!? Java Basics - Anfänger-Themen 3
G array return methode Java Basics - Anfänger-Themen 10
U Objekte in Array erstellen und Methode in verschiedenen klassen aufrufen Java Basics - Anfänger-Themen 5
A Methode mit Array als Param --> return Array --> Fehler Java Basics - Anfänger-Themen 3
T Methoden methode gibt array bound exeption Java Basics - Anfänger-Themen 8
C Array an Methode Java Basics - Anfänger-Themen 5
D Array void Methode erstellen. Java Basics - Anfänger-Themen 12
F Setter-Methode bei double-Array Java Basics - Anfänger-Themen 6
B Array in Methode erzeugen und übergeben Java Basics - Anfänger-Themen 4
F Klassen DataBuffer - Methode um Array in eine Bank zu schreiben Java Basics - Anfänger-Themen 3
N Methode die String in char-Array wandelt!! Java Basics - Anfänger-Themen 11
L Methoden Auf statische Methode einer anderen Klasse zugreifen, die Array zurückgibt Java Basics - Anfänger-Themen 3
E Generischer Methode ein Array übergeben Java Basics - Anfänger-Themen 3
B Methoden File Array an methode übergeben. Java Basics - Anfänger-Themen 2
D Array aus Methode übernehmen Java Basics - Anfänger-Themen 4
S Datentypen Array fill Methode - unterschiedliche Datentypen Java Basics - Anfänger-Themen 6
M Array in Methode erweitern und zurückgeben Java Basics - Anfänger-Themen 7
X Array von Methode in Main übergeben? Java Basics - Anfänger-Themen 11
S Methode mit zweidimensionalem Array als Parameter: '.class' expected Java Basics - Anfänger-Themen 2
C Differenz-Methode mit Array lösen Java Basics - Anfänger-Themen 14
L Array erweitern per Methode Java Basics - Anfänger-Themen 5
N Compiler findet array in gleicher methode nicht Java Basics - Anfänger-Themen 4
J double-Array mit Werten von Methode füllen und an andere Methode übergeben Java Basics - Anfänger-Themen 3
E Array mittels Methode umgekehrt ausgeben Java Basics - Anfänger-Themen 6
T Array als Rückgabewert einer Methode Java Basics - Anfänger-Themen 3
P Methode BigInteger-Array übergeben als Referenz Java Basics - Anfänger-Themen 6
B Methode aufrufen 2Dim Array Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben