📜  将 i32 转换为使用 rust (1)

📅  最后修改于: 2023-12-03 15:09:31.489000             🧑  作者: Mango

将 i32 转换为使用 Rust

i32 是 Rust 中一种常见的整数类型。在进行程序开发时,会遇到需要将 i32 转换为其它类型的情况。本文将介绍如何将 i32 转换为使用 Rust 中的其它类型。

1. i32 转换为 String

在 Rust 中,可以使用 to_string() 方法将 i32 转换为 String 类型。示例代码如下:

fn main() {
   let i: i32 = 123;
   let s: String = i.to_string();
   println!("{}", s);
}
2. i32 转换为 f32 或 f64

在 Rust 中,可以使用 as 关键字将 i32 转换为 f32 或 f64 类型。示例代码如下:

fn main() {
   let i: i32 = 123;
   let f1: f32 = i as f32;
   let f2: f64 = i as f64;
   println!("f1: {}, f2: {}", f1, f2);
}
3. i32 转换为 u8, u16, u32, u64, usize

在 Rust 中,可以使用 as 关键字将 i32 转换为无符号整数类型。示例代码如下:

fn main() {
   let i: i32 = 123;
   let u1: u8 = i as u8;
   let u2: u16 = i as u16;
   let u3: u32 = i as u32;
   let u4: u64 = i as u64;
   let u5: usize = i as usize;
   println!("u1: {}, u2: {}, u3: {}, u4: {}, u5: {}", u1, u2, u3, u4, u5);
}

需要注意的是,当 i32 超出了无符号整数类型的范围时,转换结果将不可预料。

4. i32 转换为 i8, i16, isize

在 Rust 中,可以使用 as 关键字将 i32 转换为有符号整数类型。示例代码如下:

fn main() {
   let i: i32 = 123;
   let i1: i8 = i as i8;
   let i2: i16 = i as i16;
   let i3: isize = i as isize;
   println!("i1: {}, i2: {}, i3: {}", i1, i2, i3);
}

需要注意的是,当 i32 超出了有符号整数类型的范围时,转换结果将不可预料。

结论

本文介绍了如何将 i32 转换为使用 Rust 中的其它类型。需要注意的是,在进行类型转换时,需要注意整数类型的范围。在使用 as 进行类型转换时,超出类型范围的值将被截断或转换为其它值,这可能导致程序出现意外错误。