代码:
HashMap<String, String> map = new HashMap<>();
for(Object type:entityObj.keySet()){
String notableType=String.valueOf(type);
System.out.println(notableType);
String object="NotableType";
if(notableType.equals(object)){
map.put(entity.toString(), entityObj.get(type).toString());
System.out.println(map);
}
}
这很奇怪。我测试String notableType
正好是字符串“NotableType”,但object
和notableType
之间的哈希值完全不同。一个是-1929035367,一个是0。
为什么呢?如何解决这个问题?
答案 0 :(得分:2)
trim
使用String应该处理这个问题。
notableType.trim().equalsIgnoreCase(object)