Dados dos números x e y. Tenemos que escribir un programa Java para intercambiar el contenido de dos números usando la operación Bitwise XOR .
Input 1: x = 5, y = 10 Output : x = 10, y = 5 Explaination : 1. x = x ^ y -> x = 15 2. y = x ^ y -> y = 5 3. x = x ^ y -> x = 10 Input 2: x = 15, y = 20 Output : x = 20, y = 15
El operador XOR bit a bit (representado por ^) compara los bits correspondientes de dos operandos y devuelve 1 si son iguales y 0 si no son iguales. Digamos que tenemos dos números x e y, entonces lo que realmente hará x^y es que comparará cada bit correspondiente de x e y, y si son diferentes, generará 1 como la salida de esos dos bits (uno de x y uno de y) tomados en consideración y si los bits son iguales, entonces generará 0 como la salida de dos bits.
A continuación se muestra la implementación del código del enfoque anterior: –
Java
// Java program to swap the elements using XOR Operator import java.io.*; class GFG { public static void main(String[] args) { int x = 5, y = 10; // binary equivalent of 5 is 0101 // binary equivalent of 10 is 1010 // binary equivalent of x will become 1111 ie x=15 x = x ^ y; // binary equivalent of y will become 0101 ie y=5 y = x ^ y; // binary equivalent of x will become 1010 ie x=10 x = x ^ y; System.out.println("The value of x is " + x + " and the value of y is " + y); } }
The value of x is 10 and the value of y is 5
Publicación traducida automáticamente
Artículo escrito por lavishgarg26 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA