变量和赋值
在 Move 语言中,变量 是用来存储数据的容器。它们就像一个个盒子,可以存放不同类型的值,例如数字、字符串、布尔值等等。赋值 就是将一个值放入变量的盒子中。
声明变量
在 Move 中,使用 let
关键字来声明一个变量。后面跟着变量名、类型(可选)和要赋的值,以分号结尾。
语法
move
let <变量名>[: <类型>] = <表达式>;
例子
move
// 声明一个名为 x 的变量,类型为 u64,值为 10
let x: u64 = 10;
// 声明一个名为 y 的变量,类型为 String,值为 "Hello"
let y: String = b"Hello".to_string();
// 声明一个名为 z 的变量,类型由编译器推断,值为 true
let z = true;
类型推断
- 在上面的例子中,变量
z
的类型没有显式声明,编译器会根据赋给它的值自动推断出它的类型为bool
。 - 这在 Move 中被称为 类型推断,它可以让我们少写一些代码,但前提是编译器能够准确地推断出变量的类型。
可变性
- 默认情况下,Move 中的变量是 不可变的,这意味着一旦声明并赋值后,就不能再改变它的值。
- 如果需要声明一个可以改变值的变量,需要在
let
关键字后面加上mut
关键字。
例子
move
// 声明一个名为 a 的可变变量,类型为 u64,值为 10
let mut a: u64 = 10;
// 修改 a 的值
a = 20;
赋值
使用 =
运算符
使用 =
运算符将一个值赋给一个变量。
例子
move
let b = 5;
let mut c = 10;
c = b + 5;
注意事项
- 赋值操作的目标必须是一个 可变变量,否则编译器会报错。
- 赋值操作的左右两边的类型必须 匹配,否则编译器也会报错。
总结
- 变量是存储数据的容器,使用
let
关键字声明。 - 变量可以是可变的(
mut
)或不可变的。 - 使用
=
运算符将值赋给变量。