修正序列(Range)关于类型限制与空区间判断的描述问题:修正了——字符和数字是 Rust 中仅有的可判空类型——的表述;补充了序列支持数字和字符是因为其具备连续步进特性(Step trait)的逻辑;澄清了空是指序列区间为空(如 5..1),而非类型本身是否为空。

pull/1598/head
czg 7 days ago
parent e5443f8ad7
commit b1ef797a21

@ -321,7 +321,9 @@ for i in 1..=5 {
5
```
序列只允许用于数字或字符类型,原因是:它们可以连续,同时编译器在编译期可以检查该序列是否为空,字符和数字值是 Rust 中仅有的可以用于判断是否为空的类型。如下是一个使用字符类型序列的例子:
序列只允许使用数字或字符类型,原因是:它们具有离散且连续的特性(在 Rust 内部实现了 Step 特征)。这使得编译器能够明确从起点到终点的步进逻辑,并可以通过比较起点和终点的大小,在运行时判断该序列是否包含元素(即序列是否为空,例如 5..1 就是一个空序列)。
如下是一个使用字符类型序列的例子:
```rust
for i in 'a'..='z' {

Loading…
Cancel
Save