Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

FH-Hof Eine kleine Theorie der Zeit Richard Göbel.

Ähnliche Präsentationen


Präsentation zum Thema: "FH-Hof Eine kleine Theorie der Zeit Richard Göbel."—  Präsentation transkript:

1 FH-Hof Eine kleine Theorie der Zeit Richard Göbel

2 FH-Hof Darstellung von Zeitpunkten Kalender Jahre Monate Tage Stunden Minuten Sekunden Im Rechner: Sekunden und Bruchteile von Sekunden seit...

3 FH-Hof Klassen in Java TimeZone: Zeitzone Calendar GregorianCalendar Klassen zur Konvertierung von Sekunden seit 1.1.1970 00:00 in Tage, Stunden, Minuten, etc. DateFormat Konvertierung eines Datums in eine externe Darstellung und umgekehrt Date: Datum und Zeitpunkt

4 FH-Hof Datum Date time1, time2; time1 = new Date(); time2 = new Date(); time1.setLong(...) // setzt die Zeit in Millisekunden nach // dem 1.1.1970 00:00 time2.setLong(...) time1.after(time2) time2.equals(time2)

5 FH-Hof GregorianCalendar - Initialisieren Zeitzonen abfragen String[] ids = TimeZone.getAvailableIDs(); Kalender erzeugen TimeZone tz = TimeZone.getTimeZone("Europe/Berlin"); Calendar calendar = new GregorianCalendar(tz); Zeit in Millisekunden setzen calendar.setTime(time1);

6 FH-Hof GregorianCalender – Methoden set und get Beispiel für Methode "set" calendar.set(Calendar.YEAR, value); calendar.set(Calendar.MONTH, value); calendar.set(Calendar.HOUR, value); calendar.set(Calendar.MINUTE, value); Beispiel für Methode "get" calendar.get(Calendar.YEAR); calendar.get(Calendar.MONTH); calendar.get(Calendar.HOUR); calendar.get(Calendar.MINUTE);

7 FH-Hof Felder für GregorianCalendar ERA Default: AD YEAR Default: 1970 MONTH Default: JANUARY DAY_OF_MONTH Default: 1 DAY_OF_WEEK Default: the first day of week WEEK_OF_MONTH Default: 0 DAY_OF_WEEK_IN_MONTH Default: 1 AM_PM Default: AM HOUR, HOUR_OF_DAY, MINUTE, SECOND, MILLISECOND Default: 0

8 FH-Hof DateFormat Initialisieren DateFormat df = DateFormat.getDateInstance( ); Formatstil SHORT:12.13.52 or 3:30pm MEDIUM: Jan 12, 1952 LONG: January 12, 1952 or 3:30:32pm FULL: April 12, 1952 AD or 3:30:42pm PST. Formatieren und Parsen String s = df.format(time1); Date d = df.parse(s);

9 FH-Hof Verfügbarkeit von Ressourcen Verfügbarkeit mit Start- und Endzeiten (Zeitintervall) In der Regel Sequenz von Zeitintervallen Operationen: Schnittmenge: gemeinsame Verfügbarkeit Vereinigung: alternative Verfügbarkeit

10 FH-Hof Klassendefinition TimeInterval public class TimeInterval { private Date start; private Date end; public TimeInterval(Date s, Date e) {... } public boolean overlap(TimeInterval ti) {... } public TimeInterval intersect(TimeInterval ti) {... } }

11 FH-Hof Klassendefinition Availability public class Availability { private LinkedList intervals; public Availability() {... } public addInterval(TimeInterval ti) {... } public boolean overlap(Availability av) {... } public TimeInterval intersect(Availability av) {... } public TimeInterval union(Availability av) {... } }

12 FH-Hof Bitlisten für feste Zeitintervalle Mo 0800-0930Mo 0945-1115 Mo 1130-1300Mo 1400-1530Mo 1545-1715 Mo 1730-1900Sa 1915-2045 Sa 2100-2230 01011110 Logisches Oder:Alternative Verfügbarkeit Logisches Und: Gemeinsame Verfügbarkeit

13 FH-Hof Realisierung von Bitlisten in Java Datentyp: long mit 64 Bit, Operationen &, | Datentyp BigInteger mit Methoden: BigInteger setBit(int n) boolean testBit(int n) BigInteger clearBit(int n) BigInteger and(BigInteger val) BigInteger or(BigInteger val) Objekte werden bei jeder Operation kopiert!


Herunterladen ppt "FH-Hof Eine kleine Theorie der Zeit Richard Göbel."

Ähnliche Präsentationen


Google-Anzeigen