Fix Russian translation of Rust looping docs (#33766)

This commit is contained in:
Vadim Evard
2019-08-08 01:01:10 +03:00
committed by Randell Dawson
parent 2d0075464b
commit 1b3635f6fb

View File

@ -4,13 +4,13 @@ localeTitle: Loops
--- ---
# Loops # Loops
Внутри Rust существует три типа встроенных механизмов циклизации: `loop` , `while` и `for` . Rust поддерживает три типа циклов: `loop` , `while` и `for` .
## Бесконечное повторение с `loop` ## Бесконечное повторение с `loop`
В Rust структура `loop` будет непрерывно выполнять блок кода ad infinitum (или пока вы явно не остановите его). В Rust конструкция `loop` будет непрерывно выполнять блок кода до бесконечности (или пока вы явно не остановите его).
Вот пример программы, использующей `loop` для непрерывного вывода слова «снова» на терминал: Вот пример программы, использующей `loop` для непрерывного вывода слова «again!» на терминал:
```rust ```rust
fn main() { fn main() {
@ -22,7 +22,7 @@ fn main() {
## Условный цикл с `while` ## Условный цикл с `while`
Вышеупомянутый механизм не очень полезен, если мы не вводим какое-то условие остановки для `loop` для которого нужно проверить. К счастью, Rust имеет встроенную циклическую структуру, называемую `while` , которую вы можете использовать для непрерывного выполнения блока кода, в то время как какое-то условие истинно. Описанный выше механизм не очень полезен, если мы не добавим какое-то условие, по которому `loop` будет останавливаться. К счастью, в Rust есть встроенная конструкция цикла `while`. Её можно использовать для непрерывного выполнения блока до тех пор, пока какое-то условие истинно.
Вот пример программы, использующей `while` для обратного отсчета от 5: Вот пример программы, использующей `while` для обратного отсчета от 5:
@ -37,11 +37,11 @@ fn main() {
} }
``` ```
Выполните [здесь](https://play.rust-lang.org/?gist=62677371a8590be27c84dcae7068de57&version=stable) код. Запустите код [здесь](https://play.rust-lang.org/?gist=62677371a8590be27c84dcae7068de57&version=stable).
## Перебор коллекции с `for` ## Перебор коллекции с `for`
В некоторых случаях вам может потребоваться повторить и использовать элементы коллекции (например, массив). В то время как вы могли бы добиться этого с помощью `while` цикл и индексную переменную для доступа к каждому элементу, Rust предоставляет `for` цикла , чтобы сделать эту операцию гораздо проще. В некоторых случаях вам может потребоваться пройтись по элементам коллекции (например, массива) и как-то обработать их. Это можно было бы сделать с помощью `while`, используя индексную переменную для доступа к каждому элементу. Чтобы сделать эту операцию гораздо проще, Rust предлагает цикл `for`.
Вот пример программы, которая печатает каждое число в массиве на терминал, используя `for` : Вот пример программы, которая печатает каждое число в массиве на терминал, используя `for` :
@ -55,6 +55,6 @@ fn main() {
} }
``` ```
Выполните [здесь](https://play.rust-lang.org/?gist=0c2acf21b96a81ebd411e4a7dc5a19fd&version=stable) код. Запустите код [здесь](https://play.rust-lang.org/?gist=0c2acf21b96a81ebd411e4a7dc5a19fd&version=stable).
Подобно итераторам в C ++, `.iter()` возвращает итератор в `collection` , который затем может быть зациклирован для доступа к каждому `element` . Для получения дополнительной информации перейдите к документации Rust по [потоку управления](https://doc.rust-lang.org/book/second-edition/ch03-05-control-flow.html) . Подобно итераторам в C++, `.iter()` возвращает итератор коллекции `collection`, который затем можно использовать в цикле для доступа к каждому элементу `element`. Для получения дополнительной информации перейдите к документации Rust по порядку исполнения ([control flow](https://doc.rust-lang.org/book/second-edition/ch03-05-control-flow.html)).