首页 > 解决方案 > 当常量字符串不在池中时是否正确?

问题描述

我在露天有一个代码:

Map properties = propertyHelper.getNodeProps(nodeRef)
QName linkedType = QName.createQNameWithValidLocalName("http://www.emc-consulting.ru/model/linked/1.0" ,"linked_type");
 Object collectionOfLinkedObjects = properties.get(linkedType);

似乎linkedType QName 中的字符串不在字符串的池中,因为它们的哈希码与属性中的哈希码不同。为什么?我认为在编译时默认情况下,放置在 "" (配额)中的每个字符串都会实习到池中。我可以在调试器中看到哈希码。当我使用常量时,一切都很顺利。谢谢!

标签: javastring

解决方案


推荐阅读