Java 如何使用keySet().iterator()在HashMap中的键中查找模式
我已经将HashMap和keyset Iterartor装箱如下:Java 如何使用keySet().iterator()在HashMap中的键中查找模式,java,pattern-matching,Java,Pattern Matching,我已经将HashMap和keyset Iterartor装箱如下: HashMap<Integer,String> map = new HashMap< Integer,String>();** map.put(-1505711364, "4"); map.put(294357273, "15"); map.put(-1593134417, "28"); map.put(-1231165758, "45"); map.put(121046798, "58");
HashMap<Integer,String> map = new HashMap< Integer,String>();**
map.put(-1505711364, "4");
map.put(294357273, "15");
map.put(-1593134417, "28");
map.put(-1231165758, "45");
map.put(121046798, "58");
map.put(294357273, "71");
map.put(-1593134417, "82");
map.put(-1231165758, "95");
map.put(121046798, "108");
Iterator<Integer> keySetIterator = map.keySet().iterator();
HashMap-map=newhashmap()**
地图放置(-1505711364,“4”);
地图放置(294357273,“15”);
地图放置(-1593134417,“28”);
地图出售(-1231165758,“45”);
地图放置(121046798,“58”);
地图放置(294357273,“71”);
地图放置(-1593134417,“82”);
地图出售(-1231165758,“95”);
地图放置(121046798,“108”);
迭代器keySetIterator=map.keySet().Iterator();
我需要提取15,28,45
和71,82,95
,因为它们具有相同的键模式。同样,我需要找到从2号开始的各种常见图案
如何使用keySetIterator执行此操作?如果使用同一个键运行两次
map.put()
,它将覆盖上一个条目。这是因为一个基本的假设是映射中的键是唯一的,因此每个键只能存在一个。如果使用同一个键运行Map.put()
两次,它将覆盖以前的条目。这是因为一个基本假设是Map
中的键是唯一的,因此每个键中只能有一个存在。您确实实现了使用相同键的后续put
调用会覆盖以前的条目,对吗?当你输入71时,它会覆盖15。没有办法恢复那个值。我认为你需要进一步研究什么是Map
。也许你想要一个multimap?你确实意识到用同一个键调用put
会覆盖前面的条目,对吗?当你输入71时,它会覆盖15。没有办法恢复那个值。我认为你需要更多地研究什么是地图
。也许你想要一个多重地图?