Timer/Date

Padawan

Erfahrenes Mitglied
Hallo,

ich soll, ein Gewächshaus Simulieren, in dem ich die sollwerte für die Temperatur, Feuchtigkeit und licht berechne. Da auch die Außenwerte -außerhalb des Gewächshaussen- eine Rolle Spiel, wollte ich fragen, ob jemand schon so etwas programmiert hat.

da sich ja die werte je nach Jahreszeit ändern, wäre es besser/einfacher mit einem Timer die Temperatur, licht und Feuchtigkeit zu bestimmen/ändern oder den Date in Java dafür zu nehmen?


Grüsse
Padawan
 
Zuletzt bearbeitet:
Könntest auch sowas als Ansatz nehmen:

Code:
import java.util.Date;


public class DateTester {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Date date = new Date();
		for (int i = 0; i < 365; i++)
		{	
			try {
				Thread.sleep(500);
				date = new Date(date.getTime()+24*60*60*1000);
				System.out.println(date);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}

}

erhöht alle 500 Millisekunden das Datum um einen Tag.

Viele Grüße
Youza
 
Hi,
@ youza : danke für den code, der ist sehr hilfreich. :)


es passt zwar nicht ganz dem Thema, aber ich hab da noch eine frage. Ich habe da eine Klasse, mit 3 Funktionen ein getter Funktion der werte annimmt einen, der etwas berechnet und einen der den berechneten wert zurückgibt.

So, bei Netbeans hab ich ein JFrame Form erstellt, bei dem ich in jTextField bzw. JTextPane etwas ausgeben soll. Das Prblem ist, dass ich bei diesen den wert in der getterfunktion übergeben will. Es ist jedoch nicht möglich, dies zu tun, da die getter Funktion keine statische Methode sei.

Gibt es eine Methode dies umzugehen

lg Padawan
 
Lern lieber gleich sauber programmieren!
Des Beispiel von vorhin mal sauber mit nicht statischer Klasse:

Die Klasse Starting hat die main und erzeugt ein Objekt der Klasse DateTester:
Java:
package test;

import java.util.Date;

public class Starting {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		DateTester dt = new DateTester();
		dt.setDate(new Date());
		for (int i = 0; i < 365; i++) {
			dt.setDate(dt.calculateNextDay(dt.getDate()));
			System.out.println(dt.getDate());
		}
	}

}
Die zweite Klasse heißt dann DateTester mit folgendem Inhalt:
Java:
package test;

import java.util.Date;

public class DateTester {

	private Date date;

	public Date getDate() {
		return date;
	}

	public void setDate(Date date) {
		this.date = date;
	}
	public Date calculateNextDay(Date date){
		 try {
			Thread.sleep(500);	
	         date = new Date(date.getTime()+24*60*60*1000);
	         
		 } catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
		}
		 return date;
	}

}

Wichtig ist noch das die beiden Klassen im selben Package sind andernfalls müsstest du die Klasse noch importieren.

Nutz du eigentlich Eclipse falls nicht würde ich es dir sehr ans Herz legen als IDE

Grüße
Youza
 

Neue Beiträge

Zurück