Avatar ·

如何在 Rust 中实现反向 for 循环?(反向迭代顺序)

大家好!我最近开始学习 Rust,在编写反向循环时遇到了问题。在 Python 中,我习惯用 `for i in range(10, 0, -1)` 来遍历从 10 到 1 的数字。在 Rust 中,我尝试写了类似的东西: ```rust for i in 10..0 { println!("{}", i); } ``` 但这段代码什么也不输出。我期望输出 10, 9, 8... 1,但循环一次也没有执行。显然,范围 `10..0` 是空的,因为 Rust 默认只按递增顺序进行。 我还尝试了 `for i in (0..10).rev()` —— 这有效,但输出的是从 9 到 0 的数字,而我需要从 10 到 1(包含两端)。如何正确实现包含起始值和结束值的反向循环?有没有不用 `.rev()` 的方法,比如用普通语法? 提前感谢帮助!我已经谷歌过,但 Stack Overflow 是英文的,而我想用中文理解,并且有适合新手的解释。 <<>>

正确的反向