1. wie funktioniert die Rückgabe einer Methode, die NICHT void ist, wenn ich einen Wert/eine Variable mit return zurückgebe (wie binde ich diesen Wert/diese Variable in der Methode, der nun etwas übergeben wird, ein?)?
2. warum kann ich mit einer void-Methode trotzdem Werte übergeben?
3. Ich würde gerne in folgendem Programm, die Variablen "Materialkosten" und "Lohn" aus ihren jeweiligen Methoden in einer main-Methode ausgeben lassen, wie kann ich dies ermöglichen?
Java:
importjava.util.Scanner;publicclassNr6{publicstaticintLohnabrechnung(){Scanner eingabe =newScanner(System.in);System.out.println ("Guten Tag, Herr Tupid."+"\n"+"\n"+"Bitte geben Sie die Anzahl ihrer Arbeitsstunden ein.");intStundenzahl= eingabe.nextInt();intLohn;if(Stundenzahl<=40){Lohn=Stundenzahl*50;}else{Lohn=40*50+((Stundenzahl-40)*100);}returnLohn;System.out.println ("Ihr Wochenlohn beträgt: "+Lohn+" €.");}publicstaticintMaterialabrechnung(){Scanner eingabe =newScanner(System.in);System.out.println ("Herr Tupid, "+"\n"+"bitte geben Sie die Anzahl der verlegten Kabel an (Meter).");intKabelmeter= eingabe.nextInt();intMaterialkosten=((Kabelmeter/500)*1000)+((Kabelmeter%500)*3);returnMaterialkosten;System.out.println ("Ihre Materialkosten betragen: "+Materialkosten+" €. ");}}
Über eure Antworten freut sich ein gespanntes Java-Bit;-)
1. wie funktioniert die Rückgabe einer Methode, die NICHT void ist, wenn ich einen Wert/eine Variable mit return zurückgebe (wie binde ich diesen Wert/diese Variable in der Methode, der nun etwas übergeben wird, ein?)?
Verstehe ich nicht so ganz... du gibst etwas zurück und dieses etwas wird eben zurückgegeben. :bahnhof: In Zeile 8 verwendest du ja bereits die Rückgabe einer Methode (nextInt)
2. warum kann ich mit einer void-Methode trotzdem Werte übergeben?
Weil Rückgabetyp und Parameter nichts gemeinsam haben.
3. Ich würde gerne in folgendem Programm, die Variablen "Materialkosten" und "Lohn" aus ihren jeweiligen Methoden in einer main-Methode ausgeben lassen, wie kann ich dies ermöglichen?
returnLohn;//hier ist die Methode vorbei, return beendet die methode//das wird nie ausgeführt und wird nicht compilieren...System.out.println ("Ihr Wochenlohn beträgt: "+Lohn+" €.");}