PDA

View Full Version : [JAVA] XOR tra 2 byte


sonic85
21-10-2009, 16:17
Ciao,
ho un problema... dovrei fare lo XOR tra 3 termini Byte ma il compilatore non me lo lascia fare perchè vuole un cast ad int...mentre a me servono byte.

Come posso fare?
vi faccio un esempio qua sotto...
Es.
byte temp1=0x01;
byte temp2=0x10;
byte temp3=0x2;

byte XOR=temp1^temp2^temp3;// errore di tipo!!!

:help: :help:

yorkeiser
21-10-2009, 17:01
Essendo un operatore bitwise e senza carry, puoi utilizzare operandi interi e castare il solo risultato a byte.

int temp1=0x0001;
int temp2=0x0010;
int temp3=0x0002;
int XOR=temp1^temp2^temp3;// errore di tipo!!!

System.out.println((byte)XOR);
// che in generale (ma non in questo caso) sarà diverso da
System.out.println(XOR);