Als Faustregel gilt, dass Sie den Typ verwenden, der besser zu den Werten passt, die Sie verarbeiten. Dies bedeutet, dass Sie DateTime
oder TimeSpan
für Zeit verwenden sollten, es sei denn, Sie interessieren sich nur für eine bestimmte Einheit, wie Sekunden, Tage, usw., in diesem Fall können Sie einen beliebigen Integer-Typ verwenden. Gewöhnlich benötigen Sie für die Zeit Präzision und wollen keine Rundungsfehler, also würde ich keinen Fließkomma-Typ wie float
oder double
verwenden.
Für alles, was mit Geld zu tun hat, wollen Sie natürlich auch keinen Rundungsfehler, also sollten Sie wirklich decimal
hier verwenden.
schließlich nur, wenn für einige sehr spezifische Anforderungen, die Sie benötigen absolute Geschwindigkeit in einer Berechnung, die getan millionenfach und für die decimal
geschieht nicht zu schnell genug ist, nur dann würde ich denken mit ein anderer schnellerer Typ. Ich würde zuerst versuchen, mit ganzzahligen Werten (vielleicht multipliziert Ihr Wert mit einer Potenz von 10, wenn Sie Dezimalzahlen haben) und am Ende nur durch diese Potenz von 10 dividieren. Wenn dies nicht möglich ist, nur dann würde ich an die Verwendung eines double
denken. Tun Sie keine vorzeitige Optimierung, wenn Sie nicht sicher sind, dass es benötigt wird.
Was meinst du mit der Zeit? Millisekunden? Protokoll ? Zecken? Alle diese Fälle sind lang oder dezimal. – user3185569
Der beste Ansatz hängt von Ihren Anforderungen ab. Wie Sie nicht angegeben haben, haben Sie wahrscheinlich wirklich keine, was Dezimalzahl bedeutet und weitergeht. – Will
Persisch denke ich [TimeSpan'] (https://msdn.microsoft.com/en-us/library/system.timespan (v = vs.110) .aspx) ist am besten für die Zeit geeignet. Für die Rate hängt es davon ab, was Sie damit machen. –