作者:倚栏听风 | 来源:互联网 | 2023-02-07 15:15
我有这个简单的代码,我发现对于最后一个数组,containsKey方法返回总是false.
int[] indices = new int[] { 1, 3, 5, 7, 9 };
Map seen = new HashMap<>();
for (int i = 0; i
除了以下所有其他都是
System.out.println("!!!!! " + seen.containsKey(9) );
还有新的
int[] { 1, 3, 5, 7 };
除了以下所有其他都是
System.out.println("!!!!! " + seen.containsKey(7) );
这背后的逻辑是什么?
1> 小智..:
在for循环中
for (int i = 0; i
将条件更改为i <= indices.length - 1
或使用其他选项i
在您的代码中,您只将数组的最后一个元素添加到地图中.
2> Eran..:
你没有把你的indices
数组的最后一个元素放在你的Map
.
更改
for (int i = 0; i
至
for (int i = 0; i