Zähler

rep92

Mitglied
hallo community,
ich habe eine frage:
in meinem Programm kann man Tickets kaufen,im Moment noch so viel man will. das ist allerdings nicht realititätsnah,daher will ich einen zähler einbauen.
ich weiß das man einen Anfangswert mit bspw. "int Zähler=1000;" setzen kann.
wenn der nutzer nun Tickets bestellt,soll der Zähler runterzählen,auch das funktioniert bei mir:
Java:
...
Zähler=Zähler-AT //AT=Anzahl Tickets (ist definiert);
jTextField1.setText(String.valueOf(Zähler));
...
irgendwann trifft ja der Fall ein,dass die Anzahl der gewünschten Tickets größer ist als der Restbestand,das müsste ja mit if/else funktionieren:
Java:
...
if (AT<=Zähler)
{Zähler=Zähler-AT;
jTextField2.setText(String.valueOf(Zähler));}
else
{"Fehlermeldung"//das weiß ich wie es geht}
...
Ich würde das Programm aber gerne so schreiben,dass der Zähler auch nach Beenden und beim Neustarten vom letzten Restbestand aus weiter runterzählt. also bspw:
Programm 1. mal starten: 1000-50=950,dann Programm schließen,
Programm 2. mal staren: 950-100=850,dann Programm schließen,...usw.

Wie setzt man sowas um?
(ich arbeite mit netbeans)
mfr rep92
 
B

bone2

Gast
In einem so einfachen Fall, speicherst du die den Wert einfach in einer (text)Datei.
Siehe Google, java Datei schreiben, lesen

[TIPP]Variablen werden in java immer lowerCamelCase geschrieben[/TIPP]
 

rep92

Mitglied
so das klappt jetzt.
ich hab allerdings noch ein problem:
der zähler soll nur zählen,wenn mein gesamtes programm richtig bedient wird (programm arbeitet mit try und catch (bei catch kommen Fehlermeldungen)),ansonsten soll er nicht zählen. Zur Zeit zählt er nämlich immer die Tickets,auch wenn man an einer anderen Stelle etwas falsch gemacht hat (bspw.falsch eingeben oder keinen button aus einer buttongroup ausgewählt hat). ich hab gedacht das müsste doch einfach mit if/else funktionieren,also sprich:
Code:
if ("mein Programm wird richtig bedient,also der try/catch-pfad")
{"zählerrechnung"}
else
{"fehlermeldung"};

ich weiß allerdings nicht wie das gehen soll?! ich möchte sozusagen eine Bedingung die bedeutet "programmpfad=true". geht das irgendwie?

mfg rep92
 

Timothy Truckle

Top Contributor
der zähler soll nur zählen,wenn mein gesamtes programm richtig bedient wird (programm arbeitet mit try und catch (bei catch kommen Fehlermeldungen)),ansonsten soll er nicht zählen. Zur Zeit zählt er nämlich immer die Tickets,auch wenn man an einer anderen Stelle etwas falsch gemacht hat (bspw.falsch eingeben oder keinen button aus einer buttongroup ausgewählt hat). ich hab gedacht das müsste doch einfach mit if/else funktionieren,also sprich:
if ("mein Programm wird richtig bedient,also der try/catch-pfad")
{"zählerrechnung"}
else
{"fehlermeldung"};
[JAPI]Exception[/JAPI]s sind genau dazu da, solche Frickeleien zu vermeiden. Dort wo die [JAPI]Exception [/JAPI]auftritt musst Du als Programmierer entscheiden, ob sinnvolles Weiterarbeiten möglich ist oder nicht.
Wenn ja, dann gib in
Code:
catch
einfach eine Fehlermeldung aus und gut.
Wenn nein, verpacke die gefangene [JAPI]Exception [/JAPI]in einer [JAPI]RuntimeException [/JAPI]und wirf die weiter. In der
Code:
main
hast du dann ein globales
Code:
try/catch
. Innerhalb des
Code:
try
speichers Du als letztes deine Datei. Wenn eine [JAPI]Exception [/JAPI]fliegt (egal wo) kommt das Programm nicht mehr beim Speichern vorbei...

bye
TT
 

timbeau

Gesperrter Benutzer
Exceptions sollten aber nicht zur Programmsteuerung verwendet werden. Selbst bei I/O Operationen kann man vernünftige Abfragen einbauen ohne Exceptions schmeißen zu müssen. Kann sein, dass ich dich aber auch falsch verstehe.

Worauf man z.B. keine Einflüsse hat sind Netzwerke.

Ich würde schauen, dass du prüfst, dass beim Betätigen des letzten Buttons alle Bedingungen erfüllt sind. Wenn da eine nicht erfüllt ist, zeigst du das an und prüfst nochmal. Erst wenn das prüfen erfolgreich ist, "kaufst" du das Ticket und setzt den Zähler hoch.
 

rep92

Mitglied
Ich würde schauen, dass du prüfst, dass beim Betätigen des letzten Buttons alle Bedingungen erfüllt sind. Wenn da eine nicht erfüllt ist, zeigst du das an und prüfst nochmal. Erst wenn das prüfen erfolgreich ist, "kaufst" du das Ticket und setzt den Zähler hoch.

und genau das ist mein problem. ich weiß nicht wie ich das machen soll. also an welche stelle ich diese bedingung (mit if/else) setzen muss,damit der zähler erst dann rechnet,wenn alles richtig bedient wurde.
?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
P Zähler Variable für mehrere Objekte Java Basics - Anfänger-Themen 6
P9cman Vokal Zähler mit switch case und for-Schleife Java Basics - Anfänger-Themen 4
R Primzahlen Zähler Programm / Benachbarte Primzahlen Java Basics - Anfänger-Themen 30
M Zähler Java Basics - Anfänger-Themen 3
I Zähler, der erst wieder zählt nachdem Pixel wieder andere Farbe hat Java Basics - Anfänger-Themen 2
K Variablen Zähler Variable in Prozedur Java Basics - Anfänger-Themen 9
F For Schleife ohne Zähler Java Basics - Anfänger-Themen 3
A Ping Pong Score Zähler,aber wie? Java Basics - Anfänger-Themen 3
D Zähler nicht sichtbar (Thema: Konstruktoren) Java Basics - Anfänger-Themen 2
M Variablen Zähler funktioniert nicht - Android App Java Basics - Anfänger-Themen 3
J Zahlensytem-Zähler Java Basics - Anfänger-Themen 1
K JTextField auslesen, in int umwandeln und in einer anderen Klasse als Zähler verwenden Java Basics - Anfänger-Themen 3
T Zähler Klasse Java Basics - Anfänger-Themen 4
R Erste Schritte Arbeitszeit Zähler bzw Feierabend Uhr | GregorianCalendar | SimpleDateFormat| Java Basics - Anfänger-Themen 3
L Mausclick Zähler Java Basics - Anfänger-Themen 21
StupidAttack Zähler Java Basics - Anfänger-Themen 5
L Minimumsuche mit Zähler Java Basics - Anfänger-Themen 14
-horn- Was passiert, wenn Zähler über Integer Max läuft? Java Basics - Anfänger-Themen 9
O Verständnisfrage Zähler/Rekursion Java Basics - Anfänger-Themen 4
D Zähler beim aufrufen des Strings Java Basics - Anfänger-Themen 2
Z klick zähler Java Basics - Anfänger-Themen 2
N Zähler? Java Basics - Anfänger-Themen 3
F Problem, Zähler speichern Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben