Java-Programmierung: Wer findet den Fehler in diesem Programm?

... komplette Frage anzeigen

4 Antworten

Ich würde dir empfehlen dass ganze nochmal auf pastebin oder so hochzuladen, denn so wies hoer steht gehts kaum unübersichtlicher

Antwort bewerten Vielen Dank für Deine Bewertung

1. es geht nicht, weil String nie mit == zu vergleichen ist. Benutze statdessen x.equals("abc");
2. wo hast du in und out definiert?
3. bei einer division sollte man immer double nehmen, weil sonst die nachkommastellen abgeschnitten werden.

Hoffe ich konnte helfen.

Antwort bewerten Vielen Dank für Deine Bewertung

Das Problem sind die Vergleiche in den IF Anweisungen.

Du kannst Strings nicht auf diese Art auf Gleichheit vergleichen. Eine Stringvariable enthält immer eine Referenz (also die Angabe wo etwas im Speicher steht) auf die Speicherstelle wo der String abgelegt wurde.

Wenn Du zwei Stringvariablen a und b hast, die beide der String "Hallo" enthalten, dann sind in a und b jeweils die Adressen gespeichert, wo das Wort HALLO im Speicher ist. Und das sind zwei verschiedene Werte, also ist der Vergleich immer FALSCH.

Ein korrekter Stringvergleich sieht wie folgt aus:

if ( operation.equals("A") )
Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Alphonse
01.10.2016, 20:43

Juhu es funktioniert :D

0

Was möchtest Du wissen?