Jede Sekunde

Status
Nicht offen für weitere Antworten.

blue_devil86

Mitglied
am besten mit einen Thread

das müste einfügen wo du ein laufenden code hast die 2 zeilen
Thread warten= new Thread(new Warten ());
Warten.start();

und das schiebste so nei achtung neue klasse

public class Warten implements Runnable {

public void run() {

try {
Thread.sleep(1000);
} catch (InterruptedException ex) {
System.out.println("kann das ding net anhalten");
}
addiere++;
System.out.println("Plus eins :): " + addieren);
Thread warten= new Thread(new Warten ());
Warten.start();
}
}
 

dieta

Top Contributor
@ blue_devil86:
Am besten über einen Thread, deine Methode ist aber etwas aufwändig: Du musst jede Sekunde ein neues Objekt erzeugen und jede Sekunde den Thread neu starten. Das wird bei kürzeren Intervallen schon ganz schön unhandlich.

Am "besten" denke ich, löst man das über den Swing-Timer:
Code:
import javax.swing.Timer;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class TimerTest implements ActionListener
{
	
	private Timer timer = new Timer(1000, this);
	private double d = 0;
	
	public TimerTest()
	{
		timer.start();
	}
	
	public void actionPerformed(ActionEvent evt)
	{
		d++;
	}
	
	
	public static void main(String[] args)
	{
		TimerTest tt = new TimerTest();
	}
	
}
Außerdem wird in dienem Code "addiere" nicht deklariert und du hast "addiere" einmal mit und einmal ohne 'n' geschrieben.

Zur Klasse javax.swing.Timer:
Der übergibtst du einen Zeitintervall in Millisekunden und einen ActionListener, udn nachdem der Timer gestartet wurde, ruft er alle x Millisekunden die actionPerformed-Methode des übergebenen ActionListeners auf.


Wenn du's unbedingt mit einem Thread machen, willst, dann geht das am besten mit eienr Endlosschleife, die in dem try-catch-Block für die InterruptedException steht (sonst kannst du den Thread nicht mehr stoppen):
Code:
public class TimerTest implements Runnable
{
	
	Thread timerThread = new Thread(this);
	
	public TimerTest()
	{
		timerThread.start();
	}
	
	public void run()
	{
		try
		{
			while(true)
			{
				Thread.sleep(1000);
				d++;
			}
		}
		catch(InterruptedException ex)
		{
			//Nichts tun, der Thread wurde unterbrochen
		}
	}
	
	
	public static void main(String[] args)
	{
		TimerTest tt = new TimerTest();
	}
	
}
 

dieta

Top Contributor
Ich schätze mal, der Timer macht das auch mit einem Thread.
Ist allerdings etwas komfortabler, als es sich slebst zu proggen.

Damit mein Beispielprog auf funzt:
Code:
import javax.swing.Timer;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class TimerTest implements ActionListener
{
	
	private Timer timer = new Timer(1000, this);
	private double d = 0;
	
	public TimerTest()
	{
		timer.start();
		try
		{
			while(true)
			{
				System.out.println("Wert von \"d\": "+Double.toString(d));
				Thread.sleep(1000);
			}
		}
		catch(InterruptedException ex)
		{
			//Nichts tun, der Thread wurde unterbrochen, das Programm wurde beendet
		}
	}
	
	public void actionPerformed(ActionEvent evt)
	{
		d++;
	}
	
	
	public static void main(String[] args)
	{
		TimerTest tt = new TimerTest();
	}
	
}
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
U Farbe meines Würfels jede sekunde ändern! Java Basics - Anfänger-Themen 5
W Erste Schritte Timer soll jede Sekunde Label aktualisieren Java Basics - Anfänger-Themen 5
R JLabel imageicon jede Sekunde wechseln Java Basics - Anfänger-Themen 3
J Eine int Variable jede Sekunde um 1 hocnzählen Java Basics - Anfänger-Themen 3
berserkerdq2 Spiel hängt sich immer in der 4 Runde auf, obwohl ich jede Runde das gleiche mache Java Basics - Anfänger-Themen 1
D Ampel Programmieren die jede 10 sekunden ihre farbe wechselt Java Basics - Anfänger-Themen 6
B Methode für jede beliebe Entity erstellen Java Basics - Anfänger-Themen 7
L Jede zweite Ziffer entfernen (rekursiv) Java Basics - Anfänger-Themen 6
A Jede x-te Zeile, lösche 10 Zeilen Java Basics - Anfänger-Themen 9
S Jede Ziffer einer Zahl auslesen, damit rechnen und beim Ergebnis wiederholen ? Java Basics - Anfänger-Themen 20
M Primzahlen, nur jede 2te ausgeben Java Basics - Anfänger-Themen 11
V Ein Wort einlesen und dann jede Buchstabe ausgeben Java Basics - Anfänger-Themen 10
M Threads Jede Klasse einem Thread zuweisen Java Basics - Anfänger-Themen 7
K Mit Scanner aus einer txt Datei lesen und jede Person mit name, vorname, geburtsdatum speichern Java Basics - Anfänger-Themen 5
S Jede Reihenfolge einer zufällig langen Liste ausprobieren Java Basics - Anfänger-Themen 3
T Zufalls jedoch jede nur einmal Java Basics - Anfänger-Themen 10
K Swing Fenster jede sec.neuzeichnen Java Basics - Anfänger-Themen 14
A InputStream gibt nur jede 2te Zeile aus Java Basics - Anfänger-Themen 7
J Ein Wort einlesen und dann jede Buchstabe ausgeben Java Basics - Anfänger-Themen 25
J Jede Zeile der Textdatei in ListUI eintragen Java Basics - Anfänger-Themen 2
N jede Zwanzigste... ? Java Basics - Anfänger-Themen 12
E Jede Objektart in Mutterelement erlauben? Java Basics - Anfänger-Themen 3
E Klassendesign: Array für jede Objektart?! Java Basics - Anfänger-Themen 6
Developer_X jede Zeile einer Datei mit einem String verketten Java Basics - Anfänger-Themen 16
S PrepareStatement, jede neue Zeile INT-Wert Java Basics - Anfänger-Themen 5
W Die Methode print() wird 2 mal für jede Seite aufgerufen Java Basics - Anfänger-Themen 9
G jede 2te zeile in vector leer einfügen, wie? Java Basics - Anfänger-Themen 4
N Aus Textdatei jede Zeile in einen String lesen Java Basics - Anfänger-Themen 22
F 2DArray jede Spalte Addieren Java Basics - Anfänger-Themen 8
G Datum und Text in jede beliebige Anwendung einfügen Java Basics - Anfänger-Themen 3
M Braucht jede Klasse eine Schnittstelle ? Java Basics - Anfänger-Themen 4
M Jede Variable als private, protected etc. deklarieren? Java Basics - Anfänger-Themen 7
DaCrazyJavaExpert Threads Klicks pro Sekunde parallel zum Programm bekommen Java Basics - Anfänger-Themen 5
J Algorithmus: Grad von floating zu Grad/Minute/Sekunde Java Basics - Anfänger-Themen 3
O Halbe Sekunde für bild.getScaledInstance() ? Java Basics - Anfänger-Themen 2
1 OOP Zugriff auf eine Methode nur einmal die Sekunde Java Basics - Anfänger-Themen 8
T eine Sekunde warten Java Basics - Anfänger-Themen 11
M Zeit zurückgeben je sekunde Java Basics - Anfänger-Themen 8

Ähnliche Java Themen

Neue Themen


Oben