Veröffentlicht 7. Januar 200916 j Hallo ich hab etwas rum gespielt und wollte einen sehr einfachen taschenrechner programmieren... hab da bestimmt einen sehr einfachen fehler nur für mich bisl unklar.... nur bin jetzt net so der held bei java und hab nen problem.... ich hab da entweder irgend ein zeichen vergessen oder ich gib da befehle ein die garnicht existieren. Mein problem: ich will da einfach da einfach einen rechenzeichen rein schreiben oder nur den zeichen eintippen und dann die zu verwendenden zahlen.... falls es ein ungültiger rechenzeichen ist soll es mir "Fehler" ausgeben ... nur mein problem egal was ich da eintippe es gibt jedesmal "Fehler" aus... komm damit garnicht klar ... import java.util.Scanner; public class TaschenrechnerYK { public static void main(String arg[]){ Scanner eingabe = new Scanner(System.in); int zahl,zahl2,plus,minus,geteilt,mal; String befehl; System.out.print("Rechnart: "); befehl= eingabe.nextLine(); System.out.print("Zahl 1 : "); zahl= eingabe.nextInt(); System.out.print("Zahl 2 : "); zahl2= eingabe.nextInt(); plus=zahl+zahl2; minus=zahl-zahl2; mal=zahl*zahl2; geteilt=zahl/zahl2; if (befehl=="plus" || befehl=="+"){ System.out.print("Ergebniss: "+plus);} if (befehl=="minus"||befehl=="-"){ System.out.print("Ergebniss: "+minus);} if (befehl=="mal"||befehl=="*"){ System.out.print("Ergebniss: "+mal);} if (befehl=="geteilt"||befehl=="/"){ System.out.print("Ergebniss: "+geteilt);} else { System.out.print("Fehler");} } }
7. Januar 200916 j Wenn du Strings mit "==" vergleichst wird nicht der Inhalb des Strings verglichen sondern die Speicheradresse. Du kannst zwar zwei gleiche Strings haben, wenn diese aber nicht auf das selbe Objekt zeigen sind sie nicht gleich. Deshalb vergelcht man Strings mittels der equals-Methode: if(string1.equals(string2)){ ... } Die Stichwörter zu diesem Thema heißen Zeiger und Referenzen. Gbt aber sicher noch ausführlichere Literatur zu dem Thema. Bearbeitet 7. Januar 200916 j von speedi
7. Januar 200916 j Autor Vielen Dank für die Hilfe :uli klappt nun.... bist deinem namen wirklich gerecht sehr schnelle Antwort
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.