我有一个服务器树状图:
TreeMap server_map = new TreeMap<String, Server>() ;我想遍历整个地图来打印所有的服务器。使用这种循环:
for (Map.Entry<String, Server> entry : server_map.entrySet())
{
System.out.println(entry.getKey() + "/" + entry.getValue().foo);
}这是行不通的,因为有一个未解决的编译问题:
类型不匹配:无法从元素类型对象转换为Map.Entry
难道没有可能在服务器的树状图上迭代吗?
发布于 2013-06-10 00:44:20
将声明更改为:
TreeMap<String, Server> server_map = new TreeMap<String, Server>() ;发布于 2013-06-10 01:33:49
还请注意,由于java7不需要在右侧声明泛型类型,所以可以使用菱形运算符,节省一些书写。
TreeMap<String, Server> server_map = new TreeMap<>() ;发布于 2015-06-19 18:36:59
在Java 8中,您可以这样做:
TreeMap server_map = new TreeMap();
for (Map.Entry entry : server_map.entrySet()){
System.out.println(entry.getKey() + "/" + ((Server)entry.getValue()).foo);
}我刚做了这样的事情,解决了一个类似的问题。如果您使用<String, Server>方式,它将希望您使用Java1.5语法。
https://stackoverflow.com/questions/17015575
复制相似问题