Java: Bitte diesen Teil Code schicken?
Hallo,
ich verstehe nicht was da der Fehler ist und habs eilig.
void setup() {
String name = PopUp.readWord("Bitte geben sie Ihren Namen ein");
boolean foermlich = true || false;
int female_male = PopUp.readInt("Bitte geben sie 1 ein, wenn sie höflich angesprochen werden wollen, oder eine 2, wenn sie auf freundschaftlich angesprochen werden wollen");
begruessung(name, foermlich);
if ( female_male == 1 ){
foermlich = true;
}
else if (female_male == 2) {
foermlich = false;
}
}
String begruessung ( String name, boolean foermlich){
if (foermlich == true){
PopUp.print("Sehr geehrte(r) " + name);
}
else {
PopUp.print("Hallo " + name);
}
return name;
}
3 Antworten
Du rufst
begruessung(name, foermlich);
auf, bevor du den Wert von foermlich änderst. Zu dem Zeitpunkt ist foermlich noch immer true.
Verschiebe diesen Aufruf unter das if-elseif, sodass es erst aufgerufen wird, nachdem foermlich entsprechend gesetzt wurde.
naja dein code sollte trotzdem funktionieren seh ich grad.
aber der variablenname ist halt unpassend xD
Ich weiß ich werde den noch ändern. Wenn ich 1 eingebe soll er Sehr geehrter ausdrücken wenn ich 2 ausgebe soll er Hallo ausdrücken aber es kommt immer Sehr geehrter egal ob 1 oder 2
hab deinen fehler gefunden, hab meine antwort editiert, lad deine seite mal neu.
Ich habe einfach diesen Methode ganz unten vom Code geschrieben. Fehler: It Looks like your Mixing active and static modes.
sagt mir nix, schick mal die genaue fehlermeldung und deinen verbesserten code
Die Fehlermeldung ist wichtig, um den Fehler zu finden.
Abgesehen davon:
Mach deine Hausaufgaben selber und pass das nächste Mal im Unterricht auf. Java ist halt nichts, was man "mal eben so nebenher" oder durch wildes zusammen kopieren von vorgefertigten Schnipseln lernen kann. Du musst verstehen, was Du da tust und die Lösung von Anderen übernehmen hilft dabei nicht.
Und wenn's dich entgegen meiner Vermutung tatsächlich interessiert, dann schnapp dir gutes Buch, die sind klug aufgebaut und lehren alles, was Du brauchst.
Wenn ich die Zahl 1 ausgebe soll er Sehr geehrter ausgeben, 2 Hallo aber er gibt jedesmal egal ob 1 oder 2 Sehr geehrter aus
ich verstehe nicht was da der Fehler ist und habs eilig.
Ich auch Nicht.
Hier so würde ich es Lösen:
public static void main(String[] args) {
String name = null;
Scanner sc=new Scanner(System.in);
System.out.println("Name Hier");
name = sc.nextLine();
System.out.println("Bitte geben sie 1 ein, wenn sie höflich angesprochen werden wollen, oder eine 2, wenn sie auf freundschaftlich angesprochen werden wollen");
switch (sc.nextLine()) {
case "1":
case "höflich":
System.out.println("Sehr geehrte(r) " + name);
break;
case "2":
case "normal":
System.out.println("Hallo " + name);
break;
default:
System.out.println("Kein Gültiger Wert");
break;
}
}
Einfach "psvm" schreiben + ENTER und der Code Kommt Autoamtisch :)
warum?