rust数据类型+基础语法

2023-08-30  本文已影响0人  明明就_c565

变量

声明变量

Rust 是强类型语言,但具有自动判断变量类型的能力。

如果要声明变量,需要使用 let 关键字。

let a = 123;

在这句声明语句之后,以下三行代码都是被禁止的:

a = "abc";

a = 4.56;

a = 456;

第一行的错误在于当声明 a 是 123 以后,a 就被确定为整型数字,不能把字符串类型的值赋给它。

第二行的错误在于自动转换数字精度有损失,Rust 语言不允许精度有损失的自动数据类型转换。

第三行的错误在于 a 不是个可变变量。

常量与不可变变量的区别:

变量的值可以"重新绑定",但在"重新绑定"以前不能私自被改变,这样可以确保在每一次"绑定"之后的区域里编译器可以充分的推理程序逻辑。

 虽然 Rust 有自动判断类型的功能,但有些情况下声明类型更加方便,即尽可能带上类型:let a: u64 = 123;

重影

重影与可变变量的赋值不是一个概念,重影是指用同一个名字重新代表另一个变量实体,其类型、可变属性和值都可以变化。但可变变量赋值仅能发生值的变化。

    // 举例

    let x = 5;

    println!("The value of x is: {}", x);

    let x = x + 1;

    println!("The value of x is: {}", x);

    // 修改为字符串

    let x = "string";

    println!("The value of x is: {}", x);

数据类型

整数型

浮点型

支持 32 位浮点数(f32)和 64 位浮点数(f64),64.0 将表示 64 位浮点数,因为现代计算机处理器对两种浮点数计算的速度几乎相同,但 64 位浮点数精度更高。

布尔型

布尔型用 bool 表示,值只能为 true 或 false。

字符型

字符型用 char 表示。

复合类型

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

let a = [1, 2, 3, 4, 5];

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

let tup: (i32, f64, u8) = (500, 6.4, 1);

运算

Rust 不支持++和 --,但支持+= 和 -=等。

注释

// 这是第一种注释方式

/* 这是第二种注释方式 */

/*

 * 多行注释

 * 多行注释

 * 多行注释

 */

三个正斜杠 /// 依然是合法的注释开始。所以 Rust 可以用 /// 作为说明文档注释的开头:

上一篇 下一篇

猜你喜欢

热点阅读