跳转到内容

Rust 新手编程/变量

100% developed
来自维基教科书,开放的书籍,为开放的世界

如果我们不想将计算放在 println!() 行内呢?

为了解决这个问题,我们可以使用变量。变量允许你存储值以便以后使用。

以下是一个示例

 let number = 5;

首先,'let' 是一个特殊的关键字,表示这是一个变量。'number' 是变量的名称,以便我们以后可以引用它。'=' 表示我们正在将值赋予变量。数字 5 是我们赋予的值。这意味着以后当我们输入 'number' 时,它将引用数字 5。分号 ; 与之前一样,表示行尾。

例如

 let number = 5;
 println!("{}", number);

将打印我们放入 'number' 中的数字 5。

为什么这很好呢?

这样做的优点是我们现在将值分开了,更容易更改。因此,我们可以将代码行更改为

 let number = 5 + 4;

println() 行将打印 number 的新值,即 9。

更改变量

[编辑 | 编辑源代码]

Rust 中一个有趣的事情是变量默认情况下是不可变的。这意味着它们在创建后不能更改。但是,你可以使用 'mut' 关键字将变量设置为可变的(可更改)。

 let mut number = 5;
 number = 8;
 println!("{}", number);

这将打印出值 8,因为它覆盖了值 5,事实上,值 5 在这里根本不起作用。如果你运行这段代码,编译器会告诉你 'warning: value assigned to `number` is never read',因为它非常聪明,但也非常挑剔,会检查代码中是否有奇怪的东西。

如果你想先声明变量,然后再赋予值,你可以这样做

 let number;
 number = 8;
 println!("{}", number);

请注意,number 不再需要 'mut',因为它只被赋予了一个值,所以它没有被更改。但是,你不能在设置值之前使用它。例如,

 let number;
 println!("{}", number);
 number = 8;

当你运行 'cargo run' 时,这会给你一个错误,因为编译器会发现 number 在你尝试打印它时没有值。

以下是你可以对更改变量进行的一些操作

你可以按顺序进行数学运算

 let mut x = 10;
 x = x * x;
 x = x + 5;
 println!("{}", x);

这里我们有一个名为 'x' 的变量。它更短、更容易输入,但描述性较差,因此可能无法告诉你或其他人稍后这个数字的用途。还要注意,我们在每次设置 x 的下一个值时都使用 x 的最后值。这计算 x2 + 5,其中 x = 10,结果为 105。你可以更改 x 的值,它将对不同的 x 值计算相同的公式。

最后一件事:x = x * number 或 x = x + number 是很常见的操作,所以有一种简短的方法

 let mut x = 10;
 x *= x;
 x += 5;
 println!("{}", x);

这个程序执行相同的事情。对于基本运算,你可以将它们与 '=' 一起使用来简化。

接下来:注释

华夏公益教科书