Java Greenfoot int-Wert mit 1 addieren

Zerstoerer

Lieutenant
Registriert
Okt. 2010
Beiträge
687
Guten Abend zusammen,

wollte mal fragen wie man einen int-Wert in Greenfoot mit 1 addiert.
Habe erst "int punkte = 0;" deklariert. Dann soll später immer wenn ein Objekt - es gibt von einem Objekt etwa 20 - 1 dazu addiert werden. Ich habe also "punkte = punkte +1;" geschrieben. Allerdings wird nichts addiert.Hat jemand eine Ahnung warum?

Wäre dankbar um ein paar Ratschläge.
 
Greenfoot ist doch Java?
Gibt es in Java "klassenstatische" Attribute?
Wenn ja, dann einfach deiner Klasse ein solches Attribut geben und im Konstruktor inkrementieren (1 addieren) und im Konstruktor dekrementieren (1 subtrahieren).

Wenn du das Attribut abfragst bekommst du jederzeit die aktuelle Anzahl der Instanzen dieser Klasse raus.
 
Prinzipiell sollte ein:
Code:
int punkte = 0;
punkte = punkte + 1;
die Variable um 1 erhöhen. Ansonsten hat Boron ja bereits passende Hinweise gegeben.

Wenn du trotzdem willst, dass wir uns das anschauen, dann solltest du einen etwas größeren Codeausschnitt posten. Sonst müssen wir mal das Orakel nach dem Fehler befragen ;)

@Boron
Ja, die gibt es in Java. Die werden durch das "static" Attribut ausgezeichnet.
 
Zuletzt bearbeitet:
So ich probiers mal ausn Kopf raus und ich hoffe das ich das Problem richtig verstanden habe...

Code:
...
static int punkte = 0;

public xxxObjekt()
{
punkte++;
}
...
 
Für die Addition mit 1 fallen mir spontan drei Schreibweisen ein:
int wert = 0;
wert = wert + 1;
wert += 1;
wert++; // Standard
 
Die schnellste Art hast du vergessen: ++wert
[Kostet 1 Taktzyklus weniger als wert++ (je nach Maschinencode, vor Compileroptimierung)]
 
Zuletzt bearbeitet:
In Java? Das hängt aber schwer von der VM ab, in dem das Programm läuft.
 
Siehe Edit :)
War nicht speziell auf Java bezogen. Trotzdem gut, wenn man sich das Präinkrement angewöhnt statt des Postinkrements, überall da, wo die Logik kein Postinkrement implizit verlangt.
 
Zuletzt bearbeitet:
Zurück
Oben