0

我有一个字符串,其形式为:2013-10-20 15:18:39.954。我试图找出存储这些数据的最佳方法,以便它使用尽可能少的内存。目前我将它存储为 Java 中的 Date 对象。从这个链接我发现该对象使用了大约 32 字节的内存。有没有办法使用更少的内存来存储这些数据?我正在尝试使用尽可能低的内存,所以即使少 1 个字节也可以。

我在想我可以使用字符串,但这个链接说字符串也使用大量内存。任何帮助,将不胜感激!

4

2 回答 2

3

您可以使用方法(自纪元以来的毫秒数)和 backDate将 a 转换为 a ,a为 8 个字节。longgetTime()long

于 2013-10-21T19:11:57.700 回答
1

Ajava.util.Date只是long引擎盖下的一个。long您可以根据需要用 a和 build表示相同的信息Date

请注意,以这种方式存储信息,无论是 java.util.Date 还是 long,如果您将其转换回人类可读的表示形式,则不能完全跨平台移植。

例如,如果平台升级引入了新的闰秒,或者夏令时规则发生变化,则从纪元开始转换为“2019 年 6 月 18 日午夜”的毫秒数可能会发生变化。

于 2013-10-21T19:14:33.173 回答