1l for long,1f for float,1d for double,字节呢?
long l = 1l;
float f = 1f;
double d = 1d;
// byte b = 1?;
等价于byte
什么?它存在吗?
1l for long,1f for float,1d for double,字节呢?
long l = 1l;
float f = 1f;
double d = 1d;
// byte b = 1?;
等价于byte
什么?它存在吗?
不,没有后缀可以附加到数字文字以使其成为byte
.
请参阅Java 语言规范中的3.10 文字。
您需要像这样转换为字节:
byte b = 1;
b = (byte) 5;
因为默认情况下,这些数字常量在 Java 中被视为 int。
没有后缀可以附加数字文字
字节没有这样的后缀,请参阅Java 语言规范第 3.10.1 节:
DecimalIntegerLiteral:
DecimalNumeral IntegerTypeSuffix(opt)
IntegerTypeSuffix: one of
l L
注意(opt)
表示它是可选的。因此,要分配您需要使用(byte) 1
.