Pur*_* CK 3 java intellij-idea
我的简单 java 代码如下所示:
String s1 = "FB";
String s2 = "Ea";
System.out.println(s1.hashCode() == s2.hashCode()); // true
Map<String, Integer> map = new HashMap<>();
map.put(s1, 1);
map.put(s2, 2);
Run Code Online (Sandbox Code Playgroud)
虽然调试这段代码在IntelliJIdea,我不能看到HashMap的数据结构中创建的链接列表,另外,还创建了两个桶,而不是一个虽然哈希码是相同的s1和s2。能否请您澄清一下?
小智 8
你需要做三件事。这并不简单,我花了一段时间才弄清楚,因为之前没有人回答过它。
如果选中该值,则需要取消选中该值。要打开该窗口,您需要在调试器内右键单击,然后选择“自定义数据视图...”

现在您应该在该表中看到一个列表。
其次,您需要右键单击要查看其下一个节点的节点,然后选择“新类级别监视”
我希望这有帮助。
默认情况下,IDEA 具有简化的地图视图。要查看Right click地图对象上需要的所有内部字段,然后View as-> Object,然后对HashMap$Node对象执行相同操作。
关于table大小,它默认有 16 个桶:
java.util.HashMap#DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16
| 归档时间: |
|
| 查看次数: |
1218 次 |
| 最近记录: |