我是 java 新手,并开始使用 BitSet 和 ByteBuffer 实现 UDP 发送器,由于某种原因,我得到了我意想不到的行为。
import java.nio.ByteBuffer;
import java.nio.ByteOrder;
import java.util.BitSet;
public class Main
{
public static void main(String[] args) {
ByteBuffer out = ByteBuffer.allocate(2);
BitSet byt = new BitSet(8);
byt.set(0, true);
byt.set(1, false);
out.put(byt.toByteArray());
byt.set(0, true);
byt.set(1, false);
byt.set(2, true);
out.put(byt.toByteArray());
System.out.println("First byte is " + out.array()[0]+ " second is " + out.array()[1]);
}
}
Run Code Online (Sandbox Code Playgroud)
我在哪里得到输出
First byte is 1 second is 5
Run Code Online (Sandbox Code Playgroud)
我认为这是不行的,因为字节序是错误的
当我尝试运行这个时:
public class Main
{
public static void main(String[] args) { …Run Code Online (Sandbox Code Playgroud)