我有以下一段Java代码,并且在Eclipse,Windows 7中调试时,变量“ xoredChar”根本没有显示任何值,不是null,不是”,什么也没有。
char xoredChar = (char) (stringA.charAt(j)^stringB.charAt(j));
这是为什么?我需要了解如何在Java中的两个字符之间执行此xor操作。我想念什么?
最佳答案
好吧,如果字符串相等,您会得到一个\0
,它不是可打印的字符。试试这个
String stringA = "A";
String stringB = "A";
int j = 0;
char xoredChar = (char) (stringA.charAt(j) ^ stringB.charAt(j));
System.out.printf("'%c' = %d\n", xoredChar, (int) xoredChar);
输出为
' ' = 0