Methoden Return Rückgabewert wird nicht übergeben

skrobi

Mitglied
Hallo,

kann mir jemand weiterhelfen?

In meiner Anwendung übergebe ich ein Datum (Uebergabe-TTMMJHJJ = 21.01.2022) und Anzahl Tage (Uebergabe-Tage = -07), die in einer weiteren Methode subtrahiert werden sollen. Bis dahin funktioniert auch alles bestens. Soweit die Theorie, aber die Rückgabe an die rufendende Methode mittels RETURN und dem errechnete Datum (RetTTMMJHJJ = 14.01.2022) funktioniert nicht, es erscheint der Testwert 0123456789.

Vielen Dank im Voraus
skrobi

Übergabe vom HAPRO/Methode
Uebergabe-TTMMJHJJ = 21.01.2022
Uebergabe-Tage = -07
RetTTMMJHJJ = 0123456789
errechnetes Datum: 14.01.2022
Rückgabe ans HAPRO/Methode
Uebergabe-TTMMJHJJ = 21.01.2022
Uebergabe-Tage = -07
RetTTMMJHJJ = 14.01.2022
return


nach Rückehr aus dem UPRO/METHODE -2-
Uebergabe-TTMMJHJJ = 21.01.2022
Uebergabe-Tage = -07
RetTTMMJHJJ = 0123456789


Mein massgeblicher (gekürzter) Programmcode lautet:

Java:
package versuch21;
public class Versuch21 {
public static void main(String[] args) throws Exception{array02_verarbeiten();}

static String UebTTMMJHJJ = "21.01.2022 ";
static String RetTTMMJHJJ = "0123456789";    // mit errechnetem Datum überschreiben
static String UebTage = "-7";

public static void array02_verarbeiten() { }
static void array02_tabelle()  {
       {letztesMal_Heute_nächstesMal_ermitteln(array02) ;           

public static void letztesMal_Heute_nächstesMal_ermitteln(String[][] array02)
    {ausführungsdatum_gleich_stichtagsdatum(array02, spaltex);}
public static void ausführungsdatum_gleich_stichtagsdatum(String[][] array02,  int spaltex)
     {
     System.out.println("letztes mal ermitteln (HAPRO/METHODE -1-)");
     System.out.println("Übergabe ans UPRO/METHODE -2-");
     System.out.println("StichTagTTMMJHJJ = " + array02[zeile12x][spaltex]);
     UebTTMMJHJJ =  array02[zeile12x][spaltex];
     System.out.println("Uebergabe-TTMMJHJJ = " + UebTTMMJHJJ);
     System.out.println("Rhytmus Tage = " + array02[zeile07x][spaltex]);
     String UebTage   =  "-" + array02[zeile07x][spaltex];
     System.out.println("Uebergabe-Tage = " + UebTage);
     System.out.println("RetTTMMJHJJ = " + RetTTMMJHJJ);
//   ===============================================
    [B][COLOR=rgb(235, 107, 86)] anzahl_tage_addieren_subtrahieren(
                 UebTTMMJHJJ, UebTage, RetTTMMJHJJ);[/COLOR][/B]
//   ===============================================     
     System.out.println("nach Rückehr aus dem UPRO/METHODE -2-");
     System.out.println("Uebergabe-TTMMJHJJ = " + UebTTMMJHJJ);
     System.out.println("Uebergabe-Tage = " + UebTage);
     System.out.println("RetTTMMJHJJ = " + RetTTMMJHJJ);
     String ls020  = RetTTMMJHJJ;
     array02[zeile10x][spaltex] = ls020; 
     System.out.println("letztes Mal = " + array02[zeile10x][spaltex]);

//* @  return
  public static String anzahl_tage_addieren_subtrahieren(
                    String UebTTMMJHJJ, String UebTage, String RetTTMMJHJJ)
             {
       System.out.println(" ");
       System.out.println("anzahl_tage_addieren_subtrahieren");
       System.out.println("Übergabe vom HAPRO/Methode");
       System.out.println("Uebergabe-TTMMJHJJ = " + UebTTMMJHJJ);
       System.out.println("Uebergabe-Tage = " + UebTage);
       System.out.println("RetTTMMJHJJ = " + RetTTMMJHJJ);
    
       System.out.println("errechnetes Datum: " + outputDate);
       RetTTMMJHJJ = outputDate;
      
       System.out.println("Rückgabe ans HAPRO/Methode");
       System.out.println("Uebergabe-TTMMJHJJ = " + UebTTMMJHJJ);
       System.out.println("Uebergabe-Tage = " + UebTage);
       System.out.println("RetTTMMJHJJ = " + RetTTMMJHJJ);
       System.out.println("return ");
       System.out.println(" ");
       return RetTTMMJHJJ;
       }
}
 
G

Gelöschtes Mitglied 65838

Gast
Java:
public static void main(String[] args) throws Exception{array02_verarbeiten();}
ruft
Java:
public static void array02_verarbeiten() { }
auf

... und ende nix passiert
 

fhoffmann

Top Contributor
Zu dem was @Joreyk schon gesagt hat, möchte ich noch erwähnen, dass mir im Coce zu viele "static" erscheinen.
Bis auf wenige Ausnahemen (füe erfehrene Java-Programmierer*innen) sollte "static" nur in der main-Funktion vorkommen.

Möglicherweise ist auch nur dein "gekürzter" Code falsch.
 

skrobi

Mitglied
Java:
public static void main(String[] args) throws Exception{array02_verarbeiten();}
ruft
Java:
public static void array02_verarbeiten() { }
auf

... und ende nix passiert
Vielen Dank für deine Nachricht.
Die über dem Coding dargestellten Kommentare sind System.out.println, die in der Anwendung erstellt/ausgegeben werden. Was nicht funktioniert ist und das ist erkennbar, vor dem return ist in der aufgerufenen Methode im Feld RetTTMMJHJJ der korrekt errechnete Wert 14.01.2022 gespeichert. Nach Rückkehr in die rufende Methode ist im vorgenannten Feld mein ursprüngliche Testwert 0123456789 enthalten.
Es sieht so aus, als ob hier unterschiedliche Adressierungen vorliegen.
Aber das ist nur meine Anfänger-Vermutung. Das dargestellte Coding ist nicht die komplette Anwendung sondern nur ein Fragment.
Gruß skrobi
 
G

Gelöschtes Mitglied 65838

Gast
in deiner main rufst du eine methode auf die leer ist dann bist du am ende und das System wird verlassen und nix ist passiert

das macht dein programm so wie du es gepostet hast
 

skrobi

Mitglied
in deiner main rufst du eine methode auf die leer ist dann bist du am ende und das System wird verlassen und nix ist passiert

das macht dein programm so wie du es gepostet hast
Hallo,
Das dargestellte Programm ist natürlich nur ein Fragment. Das Originalprogramm hat ca. 1.000 Zeilen die ich niemand zum Lesen zumuten möchte. Ausserdem läuft das Programm einwandfrei.
Was nicht funktioniert:
Zum Return-Zeitpunkt enthält der Übergabeparameter RetTTMMJHJJ eindeutig das Datum 14.01.2022. Nächste Programmaktiion Hapro: Übergabeparameter RetTTMMJHJJ hat den ursprünglichen Testwert 0123456789 nicht 14.01.2022.
Das ist mein Problem
Gruß skrobi
 
G

Gelöschtes Mitglied 65838

Gast
Java:
       System.out.println("errechnetes Datum: " + outputDate);
       RetTTMMJHJJ = outputDate;
du rechnest das outputDate nirgends aus, ka was drin steht ist nirgends deklariert

dann kriegst du im methoden aufruf den wert zurück den du nicht speicherst

Java:
    [B][COLOR=rgb(235, 107, 86)] anzahl_tage_addieren_subtrahieren(
                 UebTTMMJHJJ, UebTage, RetTTMMJHJJ);[/COLOR][/B]
du speicherst den return wert nicht rein => dadurch dass es static ist UND der wert sowieso gleich dem output date ist ( was wahrscheinlich wieder static ist macht der return wert 0 sinn ... aber das ganze sieht fragwürdig aus da java eine objekt orientierte sprache ist und du benutzt sie wie eine funktionelle sprache was nicht gut ist..

und 3tens ... objekte... klassen ... vllt benutzen ansonsten hast du spaghetti code( den hast du schon ) und 1000 zeilen dateien...
 

skrobi

Mitglied
Java:
       System.out.println("errechnetes Datum: " + outputDate);
       RetTTMMJHJJ = outputDate;
du rechnest das outputDate nirgends aus, ka was drin steht ist nirgends deklariert

dann kriegst du im methoden aufruf den wert zurück den du nicht speicherst

Java:
    [B][COLOR=rgb(235, 107, 86)] anzahl_tage_addieren_subtrahieren(
                 UebTTMMJHJJ, UebTage, RetTTMMJHJJ);[/COLOR][/B]
du speicherst den return wert nicht rein => dadurch dass es static ist UND der wert sowieso gleich dem output date ist ( was wahrscheinlich wieder static ist macht der return wert 0 sinn ... aber das ganze sieht fragwürdig aus da java eine objekt orientierte sprache ist und du benutzt sie wie eine funktionelle sprache was nicht gut ist..

und 3tens ... objekte... klassen ... vllt benutzen ansonsten hast du spaghetti code( den hast du schon ) und 1000 zeilen dateien...
Java:
       System.out.println("errechnetes Datum: " + outputDate);
       RetTTMMJHJJ = outputDate;
du rechnest das outputDate nirgends aus, ka was drin steht ist nirgends deklariert

dann kriegst du im methoden aufruf den wert zurück den du nicht speicherst

Java:
    [B][COLOR=rgb(235, 107, 86)] anzahl_tage_addieren_subtrahieren(
                 UebTTMMJHJJ, UebTage, RetTTMMJHJJ);[/COLOR][/B]
du speicherst den return wert nicht rein => dadurch dass es static ist UND der wert sowieso gleich dem output date ist ( was wahrscheinlich wieder static ist macht der return wert 0 sinn ... aber das ganze sieht fragwürdig aus da java eine objekt orientierte sprache ist und du benutzt sie wie eine funktionelle sprache was nicht gut ist..

und 3tens ... objekte... klassen ... vllt benutzen ansonsten hast du spaghetti code( den hast du schon ) und 1000 zeilen dateien...
Hallo Joreyk,
vielen Dank für Deinen nützlichen Hinweis. Ich werde in dieser Reihe weitersuchen, denn ich erinnere mich in meinem Java-Lehrbuch irgendwo zum Thema "Parameterübergabe - Value - Referenz" gelesen zu haben, dass bei entsprechender Vorgehensweise beim Verlassen der Methode, Inhalte von Variablen (Werte) weitergegeben werden oder auch nicht. Dieser Fall liegt hier vermutlich vor.
Vielen Dank und weiterhin alles Gute
skrobi
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
MiMa Java Doc mehrere Return Parameter Java Basics - Anfänger-Themen 11
A Return in While Schleife Java Basics - Anfänger-Themen 6
J Rekursive Funktion und return statement Java Basics - Anfänger-Themen 3
SUPERTJB return Problem Java Basics - Anfänger-Themen 3
M Warum return die Methode den Wert nicht Java Basics - Anfänger-Themen 5
schredder Strings und reguläre Ausdrücke - Methode mit return string.matches Java Basics - Anfänger-Themen 5
I Return Array Java Basics - Anfänger-Themen 4
Q return Ausgabe Java Basics - Anfänger-Themen 4
javapingu Variablenwerte ändern ohne return Statement? Java Basics - Anfänger-Themen 7
C Ausgabe boolean return ((n==9)||(n==0)); Java Basics - Anfänger-Themen 13
G return 1 + methode Java Basics - Anfänger-Themen 4
H Methode mit Array als Rückgabe This method must return a result of Type int[] Java Basics - Anfänger-Themen 2
JD_1998 Hilfsmethode if return funktioniert nicht Java Basics - Anfänger-Themen 2
J Missing Return Statement Java Basics - Anfänger-Themen 11
T Return einer anderen Methode herausfinden Java Basics - Anfänger-Themen 9
C ArrayList mit return zurückgeben Java Basics - Anfänger-Themen 13
M kann man return in nur einer Methode einsetzen? Java Basics - Anfänger-Themen 7
V return String[] führt zu [Ljava.lang.String;@50675690 Java Basics - Anfänger-Themen 7
K Return in Schleife Java Basics - Anfänger-Themen 4
B Statische Methode return funktioniert nicht. Java Basics - Anfänger-Themen 19
S Missing return Java Basics - Anfänger-Themen 4
das_leon return message Java Basics - Anfänger-Themen 2
C return kann nicht auf variable zugreifen Java Basics - Anfänger-Themen 26
N Ausführung gibt keinen Fehler an, Return wird aber nicht ausgegeben Java Basics - Anfänger-Themen 22
R return: cannot find symbol Java Basics - Anfänger-Themen 2
R Ratespiel mit Return und einer Eingabe Java Basics - Anfänger-Themen 1
Z Return in While-Schleife Java Basics - Anfänger-Themen 7
N Frage zu this, super und return Java Basics - Anfänger-Themen 13
K ArrayList ausgeben mit return Java Basics - Anfänger-Themen 6
M Return statement Java Basics - Anfänger-Themen 4
J-Gallus Ein Getter bekommt eine anderen Type als er Return soll Java Basics - Anfänger-Themen 9
J Variablen Komsiche System.in.read() return-value? Java Basics - Anfänger-Themen 3
M Abbrechen Methode ohne return Java Basics - Anfänger-Themen 3
M Methoden Datei einlesen und als return übergeben. Java Basics - Anfänger-Themen 8
L OOP Return Java Basics - Anfänger-Themen 10
L Erste Schritte Frage zu 'return' Java Basics - Anfänger-Themen 4
J Methoden Rekursive Return Methode Java Basics - Anfänger-Themen 2
W Return statement in Methode nur bei if-clause Java Basics - Anfänger-Themen 3
D Methoden Return-Wert wird nicht ausgegeben Java Basics - Anfänger-Themen 3
F Return-Anweisung Java Basics - Anfänger-Themen 2
E Erste Schritte <? super Unterklasse> Return-Typ darf nicht vom Wildcard-Typ sein Java Basics - Anfänger-Themen 5
B OOP Methode mit Array mit return verlassen Java Basics - Anfänger-Themen 8
J Grundsätzliche Frage zu return Types in Methoden Java Basics - Anfänger-Themen 6
G return-wert für eine Methode Java Basics - Anfänger-Themen 1
B Methoden Probleme mit for Schleife und return Java Basics - Anfänger-Themen 5
Q Tastatureingabe direkt nach Eingabe (ohne zwischenzeitliches "Return" o.Ä ) weiterverwenden Java Basics - Anfänger-Themen 1
B Variablen Problem mit return String[] Java Basics - Anfänger-Themen 4
O Per return Run Methode beenden Java Basics - Anfänger-Themen 3
M Arrays als return Value? Java Basics - Anfänger-Themen 2
C Return statement Java Basics - Anfänger-Themen 10
T Boolean Missing return Statement?! Java Basics - Anfänger-Themen 2
Z Methoden return nullprüfung Java Basics - Anfänger-Themen 7
O Java return in Schleife Java Basics - Anfänger-Themen 4
K Was macht hier genau return? Java Basics - Anfänger-Themen 2
G Methoden Was bedeutet return in einer Methode Java Basics - Anfänger-Themen 5
Y Warum void statt Datentyp + return Java Basics - Anfänger-Themen 4
K Variablen RETURN in Case-Switch / This method must return a result of type Item Java Basics - Anfänger-Themen 4
K Erste Schritte "return" Problem bei Rekursion Java Basics - Anfänger-Themen 8
R If Verschachtelung und return; Java Basics - Anfänger-Themen 4
M Frage zum return; Befehl Java Basics - Anfänger-Themen 1
S try-catch - Variablen werden nicht an return übergeben Java Basics - Anfänger-Themen 3
C Einige Anfängerfragen (Return-Wert, Exception...) Java Basics - Anfänger-Themen 11
S Methoden Return Java Basics - Anfänger-Themen 8
T return-Wert verwenden? Java Basics - Anfänger-Themen 12
T Return eines Int-Werts? Java Basics - Anfänger-Themen 3
W return-Anweisung gibt nichts aus Java Basics - Anfänger-Themen 5
R Return in If Java Basics - Anfänger-Themen 10
S Methoden Return Anweisung beendet Methode nicht, stattdessen wird diese zweimal durchlaufen Java Basics - Anfänger-Themen 3
G array return methode Java Basics - Anfänger-Themen 10
L return wird nicht erkannt? Java Basics - Anfänger-Themen 3
J Regex mit Return Java Basics - Anfänger-Themen 3
M Variablen return-array klonen Java Basics - Anfänger-Themen 3
A Methode mit Array als Param --> return Array --> Fehler Java Basics - Anfänger-Themen 3
S Zeichen einlesen ohne Return? Java Basics - Anfänger-Themen 19
P Compiler-Fehler Boolean: Missing Return Statement Java Basics - Anfänger-Themen 4
S probleme mit der return anweisung Java Basics - Anfänger-Themen 20
E Warum wird Methode nicht durch return-Befehl beendet? Java Basics - Anfänger-Themen 3
V Erste Schritte Return ohne Argument Java Basics - Anfänger-Themen 6
I Methoden Missing return statement; Intervallschachtellung Java Basics - Anfänger-Themen 12
S Frage zu Vererbung und return. Java Basics - Anfänger-Themen 4
R return (mehrere floats) Java Basics - Anfänger-Themen 11
E Return String Java Basics - Anfänger-Themen 10
P Methoden Methode ohne return abbrechen? Java Basics - Anfänger-Themen 12
I Return Befehl in Methode Java Basics - Anfänger-Themen 13
M Problem mit boolean. Return nicht erkannt Java Basics - Anfänger-Themen 10
P Return aus For-Schleife Java Basics - Anfänger-Themen 19
S return in GUI ? Java Basics - Anfänger-Themen 12
M This method must return a result of type int Java Basics - Anfänger-Themen 13
F Erste Schritte return (char)toUnsignedInt(value) Java Basics - Anfänger-Themen 2
A Falscher Return-Wert Java Basics - Anfänger-Themen 2
M missing return statement?! Java Basics - Anfänger-Themen 4
L Return Fragen Java Basics - Anfänger-Themen 4
R Nach return() der aufgerufenen Methode wird aufrufende Methode nicht weiter ausgeführt Java Basics - Anfänger-Themen 14
I Null als return obwohl datensatz existiert Java Basics - Anfänger-Themen 12
S this method must return a result of type double Java Basics - Anfänger-Themen 2
V Problem mit return Java Basics - Anfänger-Themen 7
K Return Problem Java Basics - Anfänger-Themen 3
M Fragen zu Methoden (void/return), Übergabe von Parametern Java Basics - Anfänger-Themen 3
M Objekto.Programm. Return-Befehl Java Basics - Anfänger-Themen 4
R warum liefert ein und dieselbe funktion nicht dasselbe return?? Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben