在之前的课程中,我们看到了不同类型的整数:u8u32u64u128u256。 虽然在相同类型的整数之间可以轻松进行数学运算,但直接在不同类型的整数之间进行数学运算是不可能的。

fun mixed_types_math(): u64 {
   let x: u8 = 1;
   let y: u64 = 2;
   // 这里会报错
   x + y
}

为纠正这个问题,我们需要将x强制转换为u64,写法是(x as u64)。请记住,在类型转换时需要使用括号()。

fun mixed_types_math(): u64 {
   let x: u8 = 1;
   let y: u64 = 2;
   // 这里会吧 x 转换成 u64 类型
   (x as u64) + y
}