java中不同方式的字符串比较差异
发布时间:2020-12-15 05:08:00 所属栏目:Java 来源:网络整理
导读:我有两个字符串,我想我的意思是根据我的眼睛他们是完全相同的.但他们的比较给了我错误的结果. 让我简单解释一下, String bir = "brescia calcio";String iki = "brescia calcio?"; if("brescia calcio".equals("brescia calcio")) System.out.println(("dene
我有两个字符串,我想我的意思是根据我的眼睛他们是完全相同的.但他们的比较给了我错误的结果.
让我简单解释一下, 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()); 上面的代码片段产生 deneme 输出.我对它完全感到困惑.有人可以解释为什么会如此.谢谢. 解决方法
最后有一个不可打印的字符,你看不到.
String iki = "brescia calcio?"; for(int i=0;i<iki.length();i++) System.out.println(i+": "+iki.charAt(i)+" (" + (int) iki.charAt(i)+")"); 版画 0: b (98) 1: r (114) 2: e (101) 3: s (115) 4: c (99) 5: i (105) 6: a (97) 7: (32) 8: c (99) 9: a (97) 10: l (108) 11: c (99) 12: i (105) 13: o (111) 14: ? (8206) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |