Return statement in Methode nur bei if-clause

Windex

Neues Mitglied
Guten Tag zusammen,...

...ich bin neu im Forum und habe auch direkt eine Frage, welche mich sehr interessieren würde.

Ich habe ein Programm geschrieben, welches in der main methode eine for schleife hat, welche integer Zahlen von 10 bis und mit 100 ausgibt. In der Anweisung rufe ich eine private Methode istGerade auf, welche über eine if Schleife und den Modulo Operator prüft, ob die Zahl gerade ist.

Nun meine Frage: Wie kann ich bei der if Anweisung einen int Wert zurückgeben und bei der else Anweisung nicht bzw. wie muss ich den nachfolgenden Code umschreiben, damit das funktioniert?

Java:
public class StaticMethod {
    public static void main(String[] args) {
       
        StaticMethod gerade = new StaticMethod();   
        for(int i=10; i<=100;i++){
                System.out.println(gerade.istGerade(i));
        }
    }
   
    //Methode welche prüft, welche Zahlen zwischem 10 bis 100 gerade sind
    private int istGerade(int i){

        if(i % 2 == 0){
            return i;
        }else {
            //WIE KEIN RETURN OHNE FEHLER?
        }
    }
}

Ich freue mich auf konstruktive und hilfreiche Antworten 🙂


Freundliche Grüsse,
Windex
 
Auf diese Art solltest du das gar nicht machen. istGerade() prüft ob eine Zahl gerade ist oder nicht. Das erwartete Ergebnis ist damit "ja" oder "Nein" und nicht eine Zahl oder keine Zahl. Deshalb sollte der Rückgabewert der Methode ein boolean sein und kein int. Du gibst dann true oder false zurück, je nachdem ob die Zahl gerade ist oder nicht. Damit Dein Programm dann richtig funktioniert must du natürlich vor dem print in der main Methode prüfen was isGerade zurück gibt und dann entweder die Zahl ausgeben oder nicht.

Gruß

Claus
 
Hallo Claus

Vielen Dank für deine Antwort, dein Denkanstoss hat mir sehr geholfen. Habe in der main Methode einfach noch eine if Schleife eingebaut.

Java:
if (gerade.istGerade(i) == true){
                System.out.println(i);
            }


Wünsche dir noch einen schönen Sonntag!

Freundliche Grüsse,
Windex
 

Zurück
Oben