Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在hashmap中将日期用作键_Java_Date_Hashmap_Key_Storage - Fatal编程技术网

Java 如何在hashmap中将日期用作键

Java 如何在hashmap中将日期用作键,java,date,hashmap,key,storage,Java,Date,Hashmap,Key,Storage,我想知道是否有可能读取具有以下结构的文本文件 1946-01-12;07:00:00;-1.3;G 1946-01-12;13:00:00;0.3;G 1946-01-12;18:00:00;-2.8;Y 1946-01-13;07:00:00;-6.2;G 1946-01-13;13:00:00;-4.7;G 1946-01-13;18:00:00;-4.3;Y 1946-01-14;07:00:00;-1.5;G 但是在hashmap中有更多的行,其中日期是键,值是-1.3、0.3、-2.

我想知道是否有可能读取具有以下结构的文本文件

1946-01-12;07:00:00;-1.3;G
1946-01-12;13:00:00;0.3;G
1946-01-12;18:00:00;-2.8;Y
1946-01-13;07:00:00;-6.2;G
1946-01-13;13:00:00;-4.7;G
1946-01-13;18:00:00;-4.3;Y
1946-01-14;07:00:00;-1.5;G

但是在hashmap中有更多的行,其中日期是键,值是
-1.3、0.3、-2.8、-6.2…
等等?即使在同一日期/密钥中存在多个相同的日期,也可以存储多个值吗?

此答案假设您的文件不包含重复的密钥,并且文件格式不需要验证

您应该使用
映射
映射
来存储数据,具体取决于您是否需要时间部分:

Map<LocalDateTime, Double> map = new HashMap<>();
现在我们可以把它放在地图上:

map.put(dateTime, number);

LocalDateTime
LocalDate
实现
hashCode
equals
,所以我们根本不需要担心这一点。

Gs和
Y
s在做什么?它们只代表质量代码。我只想在第一个日期存储值-1.3,0.3,-2.8,在下一个日期存储值-6.2,-4.7,-4.3,依此类推@您可以检查此项并根据需要进行修改。好的,这是一个由多个部分组成的问题。你被卡在哪一部分?读取文件?是否将每行拆分为日期和数字?把它们放到地图上?我已经把文件读到一个数组并解析了数据。因此,我将日期和值保存在不同的变量中。所以我想我的问题是如何把它放到地图上@清扫者
map.put(dateTime, number);