byte abc[]="204.29.207.217";
这是一个错误。请告诉我纠正方法。
答案 0 :(得分:27)
如果您尝试分配硬编码值,可以使用:
byte[] bytes = { (byte) 204, 29, (byte) 207, (byte) 217 };
注意转换,因为Java字节是签名的 - 这里的转换基本上会强制溢出为负值,这可能是你想要的。
如果您实际尝试解析字符串,则需要这样做 - 将字符串拆分为部分并解析每个字符串。
如果您尝试在某些特定编码下将字符串转换为其二进制表示,则应使用String.getBytes
,例如
byte[] abc = "204.29.207.217".getBytes("UTF-8");
(请注意,传统上[]
作为变量类型的一部分,而不是变量名称之后。虽然后者是允许的,但不鼓励它作为样式。)
答案 1 :(得分:3)
这是字符串文字。如果您希望获得字符串的二进制表示形式,请使用String.getBytes
方法之一。
答案 2 :(得分:2)
使用char []或String。确保并获得String的包含。