java 的MapEntry的问题?

Set> set=map.entrySet();
for(Map.Entry entry:set){
System.out.println(entry.getKey()+"="+entry.getValue());
}

Map.Entry定义成静态接口,那是谁实现了getKey()和getValue()?还有为什么定义成静态接口?

Map和Entry都是接口,这是没有错的,楼主这里只给了一个变量map,关键点就在这个map对象里面了,比如这个map是一个HashMap对象,你可以看下HashMap的类定义是怎么写。
在HashMap中实现了Map接口,同时在HashMap中有自己的内部静态类Entry实现了Map的内部接口Map.Entry,也就是在这个HashMap的内部静态类Entry中实现了最终的gatKey和getValue方法。
其他实现Map接口的类也是如此,楼主感兴趣可以看看其他类的定义。

Map.Entry 这只是个内部类而已 这样写只是声明这个内部类 怎么是接口

API是些接口啊?
接口 Map.Entry
public static interface Map.Entry

好吧,我错了, 这样定义 就是不让你随便new ,这些对象只能通过具体的实现类 才能初始化

如 Map 只能 new HashMap 二你要问的Map.Entry 对象的初始化 肯定在实现类里实现的,getKey()和getValue() 应该也是