在研究算法看到^=的写法不太明白 查资料,实验 最后整理了下
^:异或运算符
异或运算符 作用是将两个数的二进制进行比较 相同的部分取0 ,不同的结果取1(不是加也不是减)
如:4^2。 4的二进制:100 。 2的二进制:010。 结果是110 转化为十进制 就是6
所以4^2=6
如:10^20。10的二进制:01010。20的二进制:10100。结果 11110转化为十进制 30
所以10^20=30。
如网上看到的这种
for (int i = StartIndex; i < input.Length; i++)
{
Result ^= input[i];
}
Result ^= input[i];的意思就是 Result =Result ^ input[i] ,
他们一般是char[] ,我理解的是用他们的ascii码来进行运算的
(个人理解如有不对请指出,谢谢)