Types 编译器设计-当多个强制转换级别消失时,如何进行自动类型强制转换
要将Types 编译器设计-当多个强制转换级别消失时,如何进行自动类型强制转换,types,casting,compiler-construction,implicit-conversion,Types,Casting,Compiler Construction,Implicit Conversion,要将byte转换为short,我是否可以假设有某种方法在后台被调用,并带有签名: 短字节2短(字节b) 但是,如果必须将字节转换为长,情况又如何呢?也就是说,在转换图中,它们不是通过箭头直接连接的 是否有特定的方法将字节转换为长,例如: 长字节2long(字节b) 或者,它调用一系列方法来转换字节,如下所示: 短字节2短(字节b) int short2Int(短s) long int2Long(inti) 所以本质上我的问题是,如果从一个字节转换为一个长字节,那么转换是直接的吗 byte-
byte
转换为short
,我是否可以假设有某种方法在后台被调用,并带有签名:
短字节2短(字节b)代码>
但是,如果必须将字节
转换为长
,情况又如何呢?也就是说,在转换图中,它们不是通过箭头直接连接的
是否有特定的方法将字节
转换为长
,例如:
长字节2long(字节b)代码>
或者,它调用一系列方法来转换字节,如下所示:
短字节2短(字节b)代码>
int short2Int(短s)代码>
long int2Long(inti)代码>
所以本质上我的问题是,如果从一个字节转换为一个长字节,那么转换是直接的吗
byte->long
或者是间接的,比如:
byte->short->int->long
转换直接进行,即byte->long
如果类型具有相同的有符号性(有符号或无符号),则其类型具有较小转换rank1的操作数将隐式转换为另一个类型