这是对我之前的问题的跟进(我没有得到任何回应)。就这样吧。
如果我严格遵守 JLS 第 5.2 节中规定的规则,则以下内容应该失败。
Byte b = 2;
它应该失败,因为这里正在进行 2 次转换。首先是从 int 到 byte 的隐式缩小转换以及从自动装箱到 Byte 的转换。它在这里执行 2 转换。
那么为什么没有失败呢?
JLS 第 5.2 节规定的规则不允许在这里进行 2 转换。
这是对我之前的问题的跟进(我没有得到任何回应)。就这样吧。
如果我严格遵守 JLS 第 5.2 节中规定的规则,则以下内容应该失败。
Byte b = 2;
它应该失败,因为这里正在进行 2 次转换。首先是从 int 到 byte 的隐式缩小转换以及从自动装箱到 Byte 的转换。它在这里执行 2 转换。
那么为什么没有失败呢?
JLS 第 5.2 节规定的规则不允许在这里进行 2 转换。