繁体   English   中英

对于类型Map,方法getOrDefault(String,String)未定义<String,String>

[英]The method getOrDefault(String, String) is undefined for the type Map<String,String>

在下面的代码中,我在namespaceMap的返回时遇到错误。 不知道为什么。 getOrDefault Methode应该在HashMap.class中定义。 我尝试创建一个NamespaceMapper,如链接示例中所述https://www.intertech.com/Blog/jaxb-tutorial-customized-namespace-prefixes-example-using-namespaceprefixmapper/

 import java.util.HashMap;
 import java.util.Map;

 import com.sun.xml.bind.marshaller.NamespacePrefixMapper;

 public class FimsNamespacePrefixMapper extends NamespacePrefixMapper {

 private Map<String, String> namespaceMap = new HashMap<>();

 public FimsNamespacePrefixMapper() {
    namespaceMap.put("http://base.fims.tv", "bms");
    namespaceMap.put("http://transformmedia.fims.tv", "tms");
 }

 @Override
 public String getPreferredPrefix(String arg0, String arg1, boolean arg2) {
    return namespaceMap.getOrDefault(arg0, arg1);
 }}

getOrDefault方法是在Java 8中引入的。通过运行java -version来检查您正在使用的Java运行时版本。 如果您使用的是低于Java 8(1.8)的内容,则升级并且您的代码应该可以运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM