在学习HashMap 创建和添加数据时,进入源码查看步骤,不能理解EntrySet这个内部类 和 transient Set<Map.Entry<K,V>> entrySet;这个字段的联系,因为我在调试进入源代码时发现 entrySet 是EntrySet类呀,那为什么右键进入它的源代码时 是 transient Set<Map.Entry<K,V>> entrySet 这个字段呢?
package 集合.MyMap;
import java.util.HashMap;
import java.util.Map;
@SuppressWarnings({"all"})
public class Map02 {
public static void main(String[] args) {
Map map = new HashMap();
map.put("1","xxxxxxxxxx");
map.put("2","ssssssssss");
map.put(new Person(),new Animal());
}
}
class Person{}
class Animal{}
调用 entrySet() 方法 返回 transient Set<Map.Entry<K,V>> entrySet 这个字段属性;
transient Set<Map.Entry<K,V>> entrySet 是 EntrySet 这个内部类的实例,这有啥问题吗
或许你可以阅读我容器和泛型的相关博文,实际上entrySet用于返回一个Map.Entry组成的Set,用于遍历Map。