Мой вопрос использует Java в качестве примера, но я предполагаю, что это применимо к возможно всем.В чем разница между XOR и NOT-EQUAL-TO?
Есть ли какая-либо практическая разница между оператором XOR (^ в java) и NOT-EQUAL-TO (! = В java) при сравнении булевых?
Я оценил вещи здесь, но я просто продолжал задаваться вопросом (кажется странным, две вещи равны) ... и ничего не нашел в сети. Только одно обсуждение на каком-то форуме, которое быстро закончилось без каких-либо результатов.
Некоторые связанные с этим обсуждения в этом вопросе (я лично не считаю это дубликат, например): http://stackoverflow.com/questions/160697/is-it-good-practice-to-use-the- xor-operator-in-java-for-boolean-checks – eldarerathis
Тангенциальное примечание. Как сказано ниже, два оператора означают одно и то же для булевых. Это не так в общем случае, по крайней мере, на C++. Поскольку операторы могут быть перегружены в C++, операторы '! =' И '^' могут или не могут делать то же самое. Кроме того, использование '! =' В отличие от '^' делает достаточно ясным, что выполняется проверка неравенства. –
Извините, я даже не видел этого вопроса, может быть, потому, что названия разные, и верификатор вопроса не поймал его. Во всяком случае, ответы здесь были намного лучше и просвещенны, по моему скромному мнению. О том, что там сказано ... Я склонен согласиться: если вы собираетесь сохранить одну из нескольких букв, которые оставляют код более неясным, я предпочитаю переводить многословие. Я буду придерживаться! = В этих ситуациях. – davidcesarino