brt*_*rtb 3 java string comparison hashmap string-comparison
我有两个字符串,我想我的意思是根据我的眼睛他们是完全相同的.但他们的比较给了我错误的结果.
让我简单解释一下,
String bir = "brescia calcio";
String iki = "brescia calcio?";
if("brescia calcio".equals("brescia calcio"))
System.out.println(("deneme"));
HashMap<String, Long> deneme = new HashMap<String, Long>();
HashMap<String, Long> deneme2 = new HashMap<String, Long>();
if (bir.equals(iki)) {
System.err.println("a");
}
deneme.put(bir, (long) 1);
deneme.put(iki, (long) 2);
deneme2.put("brescia calcio", (long) 3);
deneme2.put("brescia calcio", (long) 4);
System.err.println(deneme.size());
System.err.println(deneme2.size());
Run Code Online (Sandbox Code Playgroud)
上面的代码片段产生
deneme
2
1
输出.我完全搞砸了.有人可以解释为什么会如此.谢谢.
NPE*_*NPE 11
在第二个字符串中,最后iki有一个非打印字符.当我复制并粘贴该字符串时vim,我明白了
String iki = "brescia calcio?<200e>";
Run Code Online (Sandbox Code Playgroud)
我敢打赌,一旦你移除那个角色,神秘就会被解决.