Java: Methode als if-Anweisung "aktivieren"?

...komplette Frage anzeigen

2 Antworten

public static void berechnung(int y, int b);

Du stellst eine Methode innerhalb eines Methodenrumpfs vor. Das geht aber nicht. Die Methode muss vor oder hinter main deklariert werden. Des Weiteren besitzt die Methode keinen Rumpf, obwohl sie (und auch die Klasse) nicht abstrakt ist.

InOut.readInt("");

InOut ist eine bestehende Klasse, die auch die Methode readInt enthält?

Zusammengefasst sollte dein Programm so aussehen:

public class Lala { 

public static void main(String[] args){
int x = InOut.readInt("");
int y = 1;
int b = 2;

if (x == 1) {
berechnung(1, 2);
int c = y + b;
System.out.println(c);
}
else {
System.out.println("Platzhalter");
} // end of if-else
}

public static void berechnung(int y, int b) {
}
}

Die Deklarationen von x und c kannst du zu Initialisierungen zusammenfassen. Des Weiteren sollten all deine Bezeichner eindeutigere / aussagekräftigere Namen bekommen.

Für dein Vorhaben kannst du entweder die Kontrollstruktur if-else if-else oder switch-case verwenden.

Antwort bewerten Vielen Dank für Deine Bewertung

Ich bin mir da leider nicht so ganz sicher, aber was wäre wenn du die Berechnungs-Methode außerhalb der main-Methode definierst?

Also in etwa so: 

public class Lala{ public static void main(String[]args){

 int x;
int y=1;
int b=2;

x=InOut.readInt("");

if (x==1) {

berechnung(1,2);

}
else {
 
System.out.println("Platzhalter");
} // end of if-else

} // main Methode schließen

 public static void berechnung(int y, int b){

int c;

c=y+b;

System.out.println(c);

}

}

Vielleicht klappt das ja?

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Lacrouu
08.02.2017, 21:41

Danke für die Hilfe, aber leider nicht :/

0

Was möchtest Du wissen?