一般情况下rust会自动推导出数据类型, 但一个变量可能存在多种类型时就必须指定
fn main() {
let guess: u32 = "12".parse().expect("error");
println!("{}",guess);
}
标量数据类型
整数类型
整数类型 i 为有符号 u 为无符号
isize 和 usize 跟随系统, 64 位 就是 64 位, 32 就是 32
表示形式
- 10 进制可以使用
_
增强可读性
浮点型
布尔
字符串
复合类型
Tupel (固定长度)
类似于Python列表, 里面的数据类型不比相同
fn main() {
let tup = (1,'我',1.1);
println!("{},{},{}",tup.0,tup.1,tup.2);
}
分解 tupel
可以在声明变量时, 按照 tupel 下标来分解出响应值的变量
fn main() {
let tup = (1, '我', 1.1);
let (x, y, z) = tup;
println!("{},{},{}", tup.0, tup.1, tup.2);
println!("{},{},{}", x, y, z);
}
数组 (长度固定)
类型必须一样
fn main() {
let arr: [i32; 7] = [
1, 2, 3, 4, 5, 6, 7
];
println!("{},{}",arr[0],arr[1]);
}