Was bedeutet die zweite Zeile innerhalb dieser for-Schleife und was wird die Code-Darstellung in Java sein?Wie diesen Operator C# -Code in Java darstellen?
private List<int> channels = new List<int>();
private List<byte> packet= new List<int>();
for (i = 0; i < 2; i++)
{
channels.Add((int)packet[2 + (2 * i)]);
channels[i] += ((int)packet[2 + (2 * i) + 1] << 8) & 0xFF00;
}
Ist dies der richtige Weg, um oben genannten Code in Java zu tun?
for (i = 0; i < 2; i++) {
channels.add(packet.get(2 + (2 * i)));
byte temp=channels.get(i);
temp+=((packet.get(2 + (2 * i) + 1) << 8) & 0xFF00);
channels.set(i, temp);
}
Oben funktioniert gut, aber das würde die Dinge besser machen. Dank jeder für Antwort:
for (i = 0; i < 2; i++) {
channels.set(i, (byte) (packet.get(2 + (2 * i))+((packet.get(2 + (2 * i) + 1) << 8) & 0xFF00)));
}
Welcher Teil dieser Zeile ist Ihnen unklar? – Heinzi
2. Zeile innen für Schleife nach + =, was ist << und & macht? – Milan
Sie sind Bit-Operationen und funktionieren auf die gleiche Weise in C# und [Java] (http://docs.oracle.com/javase/tutorial/java/nutsandbolts/op3.html). – assylias