如何为字节数组赋值

Aja*_*dav 4 java bytearray

byte abc[]="204.29.207.217";
Run Code Online (Sandbox Code Playgroud)

这是一个错误.请告诉我正确的方法.

Jon*_*eet 27

如果您尝试分配硬编码值,则可以使用:

byte[] bytes = { (byte) 204, 29, (byte) 207, (byte) 217 };
Run Code Online (Sandbox Code Playgroud)

注意转换,因为Java字节是签名的 - 这里的转换基本上会强制溢出为负值,这可能是你想要的.

如果您实际上正在尝试解析字符串,则需要这样做 - 将字符串拆分为部分并解析每个字符串.

如果您尝试在某些特定编码下将字符串转换为其二进制表示,则应使用String.getBytes,例如

byte[] abc = "204.29.207.217".getBytes("UTF-8");
Run Code Online (Sandbox Code Playgroud)

(请注意,传统上,它[]是作为变量类型的一部分而不是变量名称之后.虽然允许后者,但不鼓励它作为样式.)