读书人

String.equals比较两个相同字符为fals

发布时间: 2012-07-30 16:19:05 作者: rapoo

String.equals比较两个相同字符为false的问题
System.err.println("INSERT INTO CommArea VALUES (1, 'country', '中国', 0, '000000');".equals("?INSERT INTO CommArea VALUES (1, 'country', '中国', 0, '000000');"));

如上代码可以放在控制台试验一下是否为false,我也找不到原因,一个是从文本里面读出来的 一个是直接复制文本里面的内容,求高手找找原因。

[解决办法]
后面的字符串,第一个字符(在INSERT之前)是不可显示字符。

你运行这段程序看看就知道了:

Java code
        String a = "INSERT INTO CommArea VALUES (1, 'country', '中国', 0, '000000');";        String b = "?INSERT INTO CommArea VALUES (1, 'country', '中国', 0, '000000');";        System.out.println("a: " + a.length() + "\t\tb: " + b.length());        for (int i = 0; i < a.length(); i++) {            if (a.charAt(i) != b.charAt(i)) {                System.out.println(i + "\t" + a.charAt(i) + "[" + (int) a.charAt(i) + "] != " + b.charAt(i) + "["                        + (int) b.charAt(i) + "]");            }        }
[解决办法]
编码问题么?我这里提示了个Some characters cannot be mapped using GBK character encoding..

试试重新手动输入。。 这个问题奇葩

读书人网 >Java相关

热点推荐