为什么我的字符串在它们出现时并不相同?

Abi*_*ste -3 java android

我目前正在使用Eclipse制作Android应用程序.目前我有两个字符串,我需要检查它们是否相等,问题是字符串是否相等,但它表明它们不是真正让我感到沮丧的.

    if (newSource.equals(source)) {
        Log.d("Equal:", "Strings are equal");
    }
    else {
        Log.d("Not Equal: ", "Strings aren't equal");     
    }
Run Code Online (Sandbox Code Playgroud)

当我运行它时,它只是在日志cat中打印出字符串不相等.我在log cat中打印了两个字符串,以检查它们是否与它们100%相等.我只是想知道是否有人在我的代码中看到错误?谢谢

goa*_*oat 8

因为字符串并不完全相同.要查看字符串的字节表示,您可以这样做

System.out.println(Arrays.toString(str1.getBytes()));
System.out.println(Arrays.toString(str2.getBytes()));
Run Code Online (Sandbox Code Playgroud)

  • 我的代码是程序员如何进行*调试*的一个例子.当某些东西不像他们期望的那样工作时,程序员*会调查*原因.我给了你一些代码,它们可以让你真正看到你的字符串是什么,因为字符串中的某些字符无法在视觉上区分 - 但你可以通过查看原始字节来区分它们.如果它们相等,它们将具有相同的字节.同样,我从来没有暗示过一种让你的字符串比较相等的方法,我纯粹向你展示了如何看待它们是不同的. (2认同)