将(java.lang.String、java.lang.Integer)放入java.util.Map<;java.lang.String、java.lang.Integer>;无法应用于(java.lang.String、java.lang.String)
我在编译代码时遇到此错误。请帮我做这个- 代码是将(java.lang.String、java.lang.Integer)放入java.util.Map<;java.lang.String、java.lang.Integer>;无法应用于(java.lang.String、java.lang.String),java,hashmap,Java,Hashmap,我在编译代码时遇到此错误。请帮我做这个- 代码是 mapConnectionProperties = new HashMap<String, Integer>(); mapConnectionProperties.put(mobileSeriesMappingDTO .getExternalIP(), mobileSeriesMappingDTO.getExternalPo
mapConnectionProperties = new HashMap<String, Integer>();
mapConnectionProperties.put(mobileSeriesMappingDTO
.getExternalIP(), mobileSeriesMappingDTO.getExternalPort());
mapConnectionProperties=newhashmap();
mapConnectionProperties.put(MobileSriesMappingTo
.getexternalp(),mobileseriesmappingto.getExternalPort());
mobileSeriesMappingDTO.getExternalPort()似乎是一个字符串。将其转换为整数
Integer.parseInt(mobileSeriesMappingDTO.getExternalPort())
您的MobileSriesMappingTo.getExternalPort()
提供了一个字符串
使用以下命令将其转换为整数:
Integer.parseInt(mobileSeriesMappingDTO.getExternalPort())
哪个错误?GetExternalP()和getExternalPort()返回什么?阅读错误:您试图将两个字符串传递给一个方法,该方法接受字符串和整数作为参数,这看起来像一条非常清晰的错误消息。getExternalIP正在检索字符串,getExternalPort正在检索int。两者都在检索正确的数据。另外,当我通过eclipse编译时,它不会给出错误,但当通过Ant编译时,它会给出此强制转换错误,并显示compile Failed。然后,您应该验证您的Ant脚本,看起来MobileSriesMappingTo.class不是最新的。或者将该映射作为的映射,这样您就不需要了。假设该端口引用网络端口号,然后将其转换为int更有意义。int表示端口号的无效值比字符串少得多。Synesso是正确的。。。虽然它取决于上下文,不是吗?getExternalIP正在检索字符串,getExternalPort正在检索int。两者都在检索正确的数据。另外,当我通过eclipse编译时,它不会给出错误,但当通过Ant编译时,它会给出这个强制转换错误,并显示编译失败。