setMethode und Variablen

Pichel

Mitglied
Hallo,

ich habe eine grundlegende Frage. Ich habe mir eine setMethode geschrieben die eine variable verlangt. Wenn ich nun mit dieser setmethode weiterarbeiten will, kann ich den Wert der variablen sehen, aber nirgends abspeichern. Z.B. einer anderen variablen übergeben und in ein Array speichern. Der Wert der Variablen ist dann immer 0 (varibale ist double).

Die Methode sieht wie folgt aus:

Java:
public void setVariable(double wert){

    double neuWert = wert; // neuWert ist 0.0 obwohl wert = 3.0 ist
    double ar[] = new double[2];
    ar[0] = wert; // ebenfalls = 0.0 im array, aber wert ist 3.0
}

Kann mit das einmal einer kurz erklären,. warum es nicht funktioniert.

Vielen Dank!!
 
Hi

deklarier´ die Array und den double neuWert vor der Funktion; also in der class
 
das hab ich gemacht. wenn ich in der selben klasse in einer anderen methode die werte aus dem array holen will, ist der entsprechende wert wieder 0.0

z.B.

Java:
public String berechneKosten(){

summe = ar[0] - ar[1]; // summe ist 0.0 sowie ar[0,1]
.
.
.
.
.

}

und dass verstehe ich nicht, warum ich dort falsche werte bekomme
 
Ähm hast du die Werte im Debugger in der aktuellen Zeile abgelesen?

Falls ja:
Gibt die Werte mal eine Zeile auf der Konsole aus oder spring im Debugger eine Zeile weiter bevor du den Wert ausliest.

Falls du Eclipse nutzt kann man das auch sehr gut mit der Variablenüberwachung machen ;) Eigentlich kann ich mir nicht vorstellen das aus einer 3 auf einmal ein 0 wird.
(außer du übergibst an die Funktion schon eine Null)

lg
 
eben, ich mir auch nicht.ich lasse mir alle werte in der konsole ausgeben, deshalb ich darauf gestoßen. aber ich kann mit nicht vorstellen, warum der wert auf einmal 0 ist.
 
Hi, in der Tat komisch.
1. Bist du dir sicher, dass die Variable, die du als Parameter an setVariable gibst, nicht 0.00 ist.
2. zum Programmierstil:
Java:
summe = ar[0] - ar[1]; // summe ist 0.0 sowie ar[0,1]
die Variable "summe" würde ich ehr in "diff(erenz)" umbenenen.
 
jo, ich bin mir sicher das der wert nicht 0.0 ist. in der setMethode frage ich auch die übergebene Variable ab, diese hat dort den richtigen wert, auch ncoh im array.

ich versuche es auf jetzt auf andere Art und Weise.
 
Moin,

es wäre wohl sinnvoller, wenn Du den kompletten Code zeigst.
Besonders jenen, wo und wie Du die Methode aufrufst.

Gruß,
Xan
 
.ich würde liebend gerne den ganzencode zeogen, aber mein LT will nicht ins netz. so müsste ich alles abschreiben und da habe ich irgendwie nicht lust zu. aber der code in den klassen ist annähernd so wie ich ihn schon dargestellt habe.
 
Moin,

dennoch muss ich behaupten dass Du irgendwo entweder einen Logikfehler oder eine falsche Wertübergabe machst.

Denn allein die Zeile:
Java:
double neuWert = wert;
MUSS den übergebenen Wert beinhalten!
Und wenn dem nicht so ist, so ist der übergebene Wert nunmal schlichtweg inkorrekt.

Gruß,
Xan
 
Zurück