Rust学习笔记——基础篇3:数据类型

数据类型

整数类型

位长度 有符号 无符号
8-bit i8 u8
16-bit i16 u16
32-bit i32 u32
64-bit i64 u64
128-bit i128 u128
arch isize usize

整数型的表述方式

进制
十进制 98_222
十六进制 0xff
八进制 0o77
二进制 0b1111_0000
字节(只能表示 u8 型) b'A'

浮点数类型(就是小数啦)

  • f32 : 32位浮点数
  • f64 : 64位浮点数(精度更高)

数学运算

Rust的数学运算和C语言类似,但是没有++--

fn main() {
    let mut a = 1 + 1; // 加
    let b = 2 - 1; // 减
    let c = 3 * 2; // 乘
    let d = 4 / 2; // 除
    let e = 4 % 2; // 取余
    a += 1; // 等价于a = a + 1
}

布尔型

bool声明,值只能是truefalse

字符型

char声明,大小为4字节,支持中文(Rust中必须使用UTF-8编码

复合类型

元组

元组是用一对()包括的一组数据,可以包含不同种类的数据:

fn main() {
    let a : (u32, f32, char) = (114, 3.14, 'a');
    let (x, y, z) = a;
    println!("x = {x}, y = {y}, z = {z}");
}

运行结果:
x = 114, y = 3.14, z = a

数组

数组用一对[]包括的同类型数据:

let a = [1, 2, 3, 4];
// a 是一个长度为 4 的整型数组

let b = ["a", "bb", "ccc"];
// b 是一个长度为 3 的字符串数组

let c: [i64; 5] = [1, 2, 3, 4, 5];
// c 是一个长度为 5 的 i64 数组

let d = [1; 3];
// 等同于 let d = [1, 1, 1];

let first = a[0];
let second = a[1];
// 数组访问

a[0] = 123; // 错误:数组 a 不可变
let mut a = [1, 2, 3];
a[0] = 4; // 正确
posted @ 2023-05-28 16:18  浮生偷闲zjy  阅读(41)  评论(0编辑  收藏  举报