Как XOR работает в обменении значениями?JAVA

Программисты JAVA общаются здесь
Anonymous
Как XOR работает в обменении значениями?

Сообщение Anonymous »

Вот исходный код: < /p>

public static String reverseString(String s){
if(s == null) return "";
char[] rev = s.toCharArray();
int i = 0, j = s.length() - 1;
while(i < j) {
rev ^= rev[j];
rev[j] ^= rev;
rev[i++] ^= rev[j--];
}
return String.valueOf(rev);
}
< /code>

Мой вопрос: как XOR работает в обмене значения символов здесь, и почему rev [i ++]^= rev [j--] здесь нужно? < /p>

Подробнее здесь: https://stackoverflow.com/questions/402 ... ing-values

Вернуться в «JAVA»