Datentypen Kalender problem

johnjohnson

Mitglied
Hallo zusammen,
ich habe ein problem. wie kann man verschiedene datentypen am besten zusammen abspeichern? bin gerade beim bau eines kalenders und will einen intwert(das datum) und einen String (terminbeschreibung) zusammen abspeichern können .
:bahnhof:
hab schon über arrays nachgedacht, das man beides in einen string umwandelt aber dann muss man es ja immer wieder zurückwandeln wenn man etwas mit dem datum vergleichen will...komm echt nicht weiter :/
wie macht man das?
lg;
jo
 

Thallius

Top Contributor
Schade, dann kann ich ja gar nicht meinen Geburtstag eingeben (1966) :)

Ich würde ein Datum immer als String im SQL Format halten. Also

2014-12-11 12:30:00

Die Uhrzeit solltest Du als UTC speichern. Also unser Zeit -1 Stunde. Dann bist du auch gleich international.
Du kannst die Daten dann ganz einfach mit equal() vergleichen und sortieren.

Gruß

Claus
 

Thallius

Top Contributor
Irgendwie war mir klar, dass es vergebens ist auf ein Konzept Problem hinzuweisen und der TO sich nicht mehr dazu merlden wird.
Es funktioniert ja jetzt mit dem int und gut ist. Wen interessiert schon ob das vernünftig durchdacht ist oder nicht.

Gruß

Claus
 

stg

Top Contributor
Und wo ist nun das Konzept-Problem? Ein Datum in Millisekunden seit dem 01.01.1970 zu speichern, ist ein geläufiger Standard. java.util.Date macht das ebenfalls. Genauso wie 238248924 andere Programme und Entwickler weltweit auch. Es gibt übrigens auch negative Ganzzahlen..

Ein Datum als String zu speichern halte ich hingegen für höchst fragwürdig. Dadurch hast du doch rein gar nichts gewonnen. Ich sehe da nur zahlreiche Nachteile, keinen einzigen Vorteil. Mit Strings kannst du nicht rechnen. Du musst ständig hin- und her parsen. Du brauchst mehr Speicherplatz. Weniger robust. Keine Kompatibilität zu diversen Frameworks, weil gängige Standards nicht eingehalten werden. Usw...
 

Thallius

Top Contributor
Und wo ist nun das Konzept-Problem? Ein Datum in Millisekunden seit dem 01.01.1970 zu speichern, ist ein geläufiger Standard. java.util.Date macht das ebenfalls. Genauso wie 238248924 andere Programme und Entwickler weltweit auch. Es gibt übrigens auch negative Ganzzahlen..

Ein Datum als String zu speichern halte ich hingegen für höchst fragwürdig. Dadurch hast du doch rein gar nichts gewonnen. Ich sehe da nur zahlreiche Nachteile, keinen einzigen Vorteil. Mit Strings kannst du nicht rechnen. Du musst ständig hin- und her parsen. Du brauchst mehr Speicherplatz. Weniger robust. Keine Kompatibilität zu diversen Frameworks, weil gängige Standards nicht eingehalten werden. Usw...

Wie willst Du denn einen Kalender machen mit einem int der den Zeitraum begrenzt? Auf einem 32bit System hast du gerademal 68 Jahre damit abgedeckt. Das ist ja nicht einmal ein MEnschenleben lang? Wie soll ich da einen vernünftigen Kalender mit abbilden?

Gruß

Claus
 

stg

Top Contributor
Auch auf einem 32-bit System hat man üblicherweise noch ein bisschen mehr als 32bit Speicher zur Verfügung :D

32 bit reichen in der Regel nicht aus, da geb ich dir recht. Aber dann nimmt man halt einen größeren Ganzzahl Typ. In Java wurde ein 64 bit long dafür gewählt. Der abgedeckte Bereich reicht dann in der Regel auch aus. Für einen einzelnen char hingegen braucht man hingegen schon 8 bit, das ist glaube ich mehr oder weniger überall der Fall. Damit kannst du dann (bei den besagten 64 bit) ja gerade einmal das Datum abbilden, und auch nur dann, wenn du die Trennzeichen weglässt.
 
Zuletzt bearbeitet:

Thallius

Top Contributor
Der Unix Timestamp ist aber definiert das er auf einem 32bit System nur 32bit hat. Wenn die in Java da was selber basteln ist das ja gut aber dann ist es kein definierter Unix Timestamp mehr und davon hatte der TO ja gesprochen.

Außerdem ist es eben sehr teuer aus einem Timestamp eine Datum mit Uhrzeit zu errechnen. Die Frage ist jetzt also was mache ich mit dem Datum? Rechne ich sehr viel damit, dann ist ein Timestamp besser. Denn da kann ich einfach subtrahieren und addieren wie ich möchte. Ich denke das wird in einem Kalender aber eher selten der Fall sein. Hier wird es wesentlich öfter nötig sein das Datum in ein anzeigefähiges Format zu bringen (lokales datumsformat) und da bist du mit einem SQL String eben viel besser unterwegs.

Gruß

Claus
 

Harry Kane

Top Contributor
Der Unix Timestamp ist aber definiert das er auf einem 32bit System nur 32bit hat. Wenn die in Java da was selber basteln ist das ja gut aber dann ist es kein definierter Unix Timestamp mehr und davon hatte der TO ja gesprochen.
Könnte es vielleicht sein, daß "die in Java" gerade deswegen "was selber basteln", eben weil ein Unix Timestamp nur 32 bit hat und deswegen nicht mehr als die 68 Jahre abbilden kann? Ich verstehe gerade nicht, was du für die beste Lösung hältst: den Unix Timestamp oder die Java-Variante? Übrigens hat nicht der TO von Unix Timestamps gesprochen, sondern du.

Außerdem ist es eben sehr teuer aus einem Timestamp eine Datum mit Uhrzeit zu errechnen.
Ja, es kann schon sein, das ein 10 Jahre alter Rechner für 1 Millionen Timestamps 5 Sekunden braucht.
Du hast vermutlich recht, daß es schneller ist, aus einem String mit einem bekannten, unveränderlichen Format einfach die Angaben zu Jahr, Monat, Tag etc. rauszuschneiden, anstatt aus einem 64 bit Zahlenwert eine Instanz von java.util.Calendar zu machen und dort dann Jahr, Monat, Tag abzufragen, aber ich halte letztere Variante einfach für sicherer und besser nachvollziehbar. Ich würde nur ungern an jeder Stelle, an denen ich mit den Datumsangaben doch rechnen muss (um beispielsweise festzustellen, welche Termine zwischen dem 27.12.2014 und 07.01.2015 liegen ), mit einer Stringbasierten Logik arbeiten. Möglich ist das natürlich.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Problem mit leerer kalender.dat - Webmaster unbekannt Allgemeine Java-Themen 9
C Kalender mit Tageswerten anzeigen Allgemeine Java-Themen 23
ZH1896ZH Best Practice Wie erstellt man am besten einen Kalender? Allgemeine Java-Themen 3
P Kalender Allgemeine Java-Themen 3
A Kalender darstellen Allgemeine Java-Themen 1
T Kalender mit Sonderfunktionen Allgemeine Java-Themen 2
N Java Kalender Graphic Allgemeine Java-Themen 2
K Kalender API Allgemeine Java-Themen 1
P Kalender arithmetik Allgemeine Java-Themen 3
M Kalender : Änderungstage markieren Allgemeine Java-Themen 5
N Kalender Normen input/output Allgemeine Java-Themen 2
T Terminplanung im Kalender Allgemeine Java-Themen 7
B warum zählt der Kalender das Datum nicht weiter Allgemeine Java-Themen 2
S Listener für Kalender Allgemeine Java-Themen 2
H Kalender Allgemeine Java-Themen 29
K grafischer Kalender für Java Allgemeine Java-Themen 4
F schöner Kalender gesucht Allgemeine Java-Themen 3
C Kalender Allgemeine Java-Themen 4
M Idden zum Kalender gesucht Allgemeine Java-Themen 2
krgewb Problem mit Umlauten und Eszett bei InputStream Allgemeine Java-Themen 3
Max246Sch Backtracking Problem Box Filler Allgemeine Java-Themen 6
NightVision402 VisualVM Startskript Problem Allgemeine Java-Themen 3
javaBoon86 Email Server Connection Problem Allgemeine Java-Themen 1
F Problem mit PDFBOX Library Allgemeine Java-Themen 1
A Java modul Problem Allgemeine Java-Themen 4
D Read JSON File Problem Allgemeine Java-Themen 9
urmelausdemeis Exception in thread "main" java.lang.Error: Unresolved compilation problem: Allgemeine Java-Themen 7
J Problem mit JasperReports Allgemeine Java-Themen 8
M log4j Problem mit jlink Allgemeine Java-Themen 19
8u3631984 Problem beim Mocken von Record Klassen Allgemeine Java-Themen 4
torresbig Website login Problem - Jsoup, wie bisher, klappt nicht! Allgemeine Java-Themen 31
P Selenium . getText Problem Allgemeine Java-Themen 9
A Jar zu Exe Problem Allgemeine Java-Themen 13
sserio Variablen Liste erstellt und ein Problem mit dem Index Allgemeine Java-Themen 6
S Folgendes Problem bei einem Programm Allgemeine Java-Themen 1
stormyark Problem beim Klassen erstellen Allgemeine Java-Themen 1
A Thread.sleep Problem Allgemeine Java-Themen 2
A Problem bei der Nachbarschafttest Allgemeine Java-Themen 11
Splayfer Problem: no main manifest attribute Allgemeine Java-Themen 3
G javamail Problem beim Empfangen von Nachrichten Allgemeine Java-Themen 3
Splayfer JDA Problem mit MessageCounter Allgemeine Java-Themen 0
Splayfer Problem mit BufferedWriter Allgemeine Java-Themen 3
F Streams als Alternative für dieses Problem ? Allgemeine Java-Themen 15
N Maven Problem mit Datenbanktreiber (H2 Embedded) Allgemeine Java-Themen 12
T Problem beim Umwandeln in eine Jar-Datei Allgemeine Java-Themen 3
B Einfach Elemente zweier Arraylisten kreuz und quer vergleichen, min und max Problem? Allgemeine Java-Themen 16
C ArrayList Problem Allgemeine Java-Themen 3
kev34 nim-Spiel problem Allgemeine Java-Themen 1
D Firebase retrieve data Problem, Child Element wird nicht angesprochen Allgemeine Java-Themen 0
G Welches Problem besteht bei den Typparametern? Allgemeine Java-Themen 5
temi Problem mit Aufrufreihenfolge bei Vererbung Allgemeine Java-Themen 3
Sumo_ow "ArrayIndexOutofBoundsException: 2" Array Problem Allgemeine Java-Themen 6
T PIM basierend auf netbeans via AnyDesk Problem Allgemeine Java-Themen 3
xGh0st2014 Problem mit Java Array Allgemeine Java-Themen 1
Kirby.exe Verständnis Problem bei Rucksack Problem Allgemeine Java-Themen 6
B Eclipse-Lombok-Problem Allgemeine Java-Themen 19
I Input/Output ObjectOutputStream - Problem Allgemeine Java-Themen 7
1 Multiple Choice Knapsack- Problem Allgemeine Java-Themen 2
kodela Problem mit strukturiertem Array Allgemeine Java-Themen 18
E Problem mit Gridlayout und Button Allgemeine Java-Themen 2
A Array Problem Allgemeine Java-Themen 8
bueseb84 Problem Allgemeine Java-Themen 0
S Problem mit Arrays Allgemeine Java-Themen 1
D Nullpointer Exception Problem Allgemeine Java-Themen 5
B Problem mit meinen Klassen Allgemeine Java-Themen 6
A HashMap Methode "get()"-Problem Allgemeine Java-Themen 28
J Problem beim Umstellen auf Java jdk 13 Allgemeine Java-Themen 3
J Problem bei Install java 13 Allgemeine Java-Themen 3
X Profitable Reise Problem Allgemeine Java-Themen 32
A Problem beim öffnen von Java-Installern Allgemeine Java-Themen 1
Dann07 Problem mit JavaMail API Allgemeine Java-Themen 26
J Problem beim Generischen Klassen und Interfaces Allgemeine Java-Themen 2
L Klassen Algorithmus für das folgende Problem entwickeln? Allgemeine Java-Themen 30
J Clear-Problem Allgemeine Java-Themen 10
B Problem zu einem Java Projekt Allgemeine Java-Themen 6
S JFileChooser Problem Allgemeine Java-Themen 4
M Traveling Salesman - MST Heuristik Problem Allgemeine Java-Themen 4
J Traveling Salesman Problem Allgemeine Java-Themen 14
E Java Editor Problem mit 2er Exceptions Allgemeine Java-Themen 12
C code oder Bibliotheken für 2-Center Problem Allgemeine Java-Themen 4
M Salesman Problem - Bruteforce Algorithmus Allgemeine Java-Themen 23
S Methoden Problem mit NullPointerException Allgemeine Java-Themen 9
Javafan02 Problem mit if-clause Allgemeine Java-Themen 17
J Lombok Problem mit Konstruktoren bei Verberbung Allgemeine Java-Themen 1
kodela Event Handling Problem mit der Alt-Taste Allgemeine Java-Themen 16
W Threads Problem Allgemeine Java-Themen 15
D (Verständnis-)Problem mit Unterklasse Allgemeine Java-Themen 4
S Problem mit Generic bei unmodifiableCollection Allgemeine Java-Themen 4
S jserialcomm Problem Allgemeine Java-Themen 1
Flynn Thread-Problem... Allgemeine Java-Themen 2
J Generische Interface - Problem Allgemeine Java-Themen 3
G Problem beim GUI Allgemeine Java-Themen 9
L Applet Problem "security: Trusted libraries list file not found" ? Allgemeine Java-Themen 7
A OOP Problem beim Berechnen der größten Fläche eines Ringes Allgemeine Java-Themen 19
T Problem mit externen Datenbankzugriff über SSH Tunnel Allgemeine Java-Themen 4
F Problem beim Einlesen einer Textdatei Allgemeine Java-Themen 12
S Java OpenOffice Problem mit Windows-Benutzerwechsel Allgemeine Java-Themen 19
K Threads RAM Problem Allgemeine Java-Themen 20
P Operatoren Problem mit Zähler in recursiver Schleife Allgemeine Java-Themen 2
C Int Problem Allgemeine Java-Themen 8

Ähnliche Java Themen

Neue Themen


Oben