Java Taschenrechner Del Taste?

gtfan67

Lt. Junior Grade
Registriert
Nov. 2008
Beiträge
347
Hi,
ich arbeite gerade an einem einfachen Taschenrechner, also +-*/ usw.
Jetzt wollte ich noch eine Del Taste hinzufügen, die die letzte Ziffer in der Anzeige löscht, könnt ihr mir da helfen?
Mein jetziger Ansatz funzt leider nicht:(
tfEinLesen.setText(anzeige);
laenge=anzeige.length()-1;
while (durchzaehl<laenge){
fuerdel=fuerdel+ anzeige.charAt(durchzaehl);
durchzaehl++;
} ;
durchzaehl=0;
tfEinLesen.setText(fuerdel);
die laenge hab ich schon vorher erfragt via lange= anzeige.length()-1;
es kommt keine fehlermeldung, es passiert einfach nix...
laenge= int
durchzaehl=int
fuerdel=string
anzeige=string
 
laenge=anzeige.length()-2; müsste klappen.
Der Index fängt mit 0 an die Länge mit 1 deshalb musst du onehin schon -1 benutzen.
 
deine idee scheint mir etwas unschön... schau dir doch mal substring an.
 
nö das geht leider nicht.
btw, ich hab ja schon einen abgezogen, weil ja wie du sagtest, der index bei 0 beginnt und die länge mit 1
EDIT: @raumgleita ok mal gucken^^
 
Das geht doch alles einfacher :
Code:
if (anzeige != null && !anzeige.isEmpty()) {
 anzeige = anzeige.substring(0, anzeige.length()-1)
}
 
hatte es wohl auch mmit nem Stringbuilder gemacht und die letzte Stelle entfernt..

Das von Zundra sieht auch funktionsfähig aus
 
Jo sowas in der Art hatte ich auch gerade vor, obwohl deins auch wunderbar funzt, danke Zunra!
 
so werden aber nur einzelne stellen gelöscht ... vllt solltest du dir mal gedanken machen, wie man effektiv die daten abspeichern kann.

falls du also mehr herausforderung suchst, weiterlesen ;)

ich denke da bspw an bäume, die dann nurnoch schnell durchgearbeitet werden, um das ergebnis zu bekommen. ein paar überlegungen:

+-*/ könnten 2-stellige knoten sein, zahlen einstellig
klammern erzeugen unterbäume
jeder knoten kennt seine rechenoperation, damit entsteht schnell ein sinnvolles zusammenrechnen und neue operationen können simpel eingefügt werden
 
mmh, hört sich interessant an, aber momentan sind meine java kenntnisse noch nicht so weit...
ma gucken, vlt später mal
 
hat nichts mit java zu tun, sondern eher mit einem allgemeinen programmierverständnis :)
ist quasi auf fast alle sprachen übertragbar

aber du wirst am besten wissen, was du dir antun willst ;)
 

Ähnliche Themen

Antworten
8
Aufrufe
27.476
Antworten
7
Aufrufe
3.602
R
Antworten
13
Aufrufe
38.259
Zurück
Oben