我只有一个Map<String, List<List<Double>>>
,例如
{onlyKey=[[1.0, 2.3, 20.1], [6.5, -9.3, 4.5]]}
但我实际上并不知道密钥的名称是什么。
如何获取地图中存储的唯一密钥的名称?
我知道keySet
已存在,但我已尝试map.keySet().get(0)
而Set
没有get(int)
方法。当您知道(或了解)它们包含的内容时,通常会使用相当确定的集合。
答案 0 :(得分:5)
Map<First, Second>
的方法keySet()
会返回密钥的Set<First>
。
另外:entrySet()
返回Set<Entry<First, Second>>
。
请注意,返回值为Set
而不是List
,插入顺序不会保留,也无法访问get(int index)
,您需要迭代一个集合才能获得第一个价值。
答案 1 :(得分:3)
从Map Documentation您可以看到,您可以使用keySet()
来恢复Set
中所有密钥的Map
,在您的情况下,这些密钥将只包含您的密钥键。
答案 2 :(得分:0)
作为使用iterator
的替代方法,您可以使用stream()
和findFirst()
:
map.keySet().stream().findFirst().get()
答案 3 :(得分:-1)
我使用map.keySet().iterator().next()
获取地图中唯一的密钥。