Bitwerte werden zusammengefasst?

Jens B.

Erfahrenes Mitglied
Hu,

also ich hab sonen kleiner Problem mit dem ich seit ca. 2 Stunden zu kämpfen habe, Google hat auch nicht geholfen.

Ich habe einen String in der Form

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 usw.

Ich habe diesen String per String.split(" ") in nen String-Array geladen. Jetzt möchte ich gerne die beiden letzten Werte des binärcodes der Zahlen in dem Stringarray in eine Integervariable speichern. Mein bisheriger versuch:

Code:
String [] playerNumberTemp;
playerNumberTemp = input.split(" "); // input ist der oben beschriebene String
int r = Integer.parseInt(playerNumberTemp[5]);
lol = r & 3;

Ich bekomme aber z.b. bei einer 6 (0110) eine 2 in meine lol-Variable gespeichert statt der gewünschten 10. Was läuft da falsch und wie mache ich es besser?

Liebe Grüße
jens
 
Ist doch alles richtig:
6 ist binär 110. 3 ist binär 011. Bitweises und (&) darauf ergibt:
110
&011
=010

010 entspricht dezimal der 2.

Wenn du den binärwert haben möchtest dann benutze Integer.toBinaryString(int i).
 
Zurück