官术网_书友最值得收藏!

  • Learning Rust
  • Paul Johnson Vesa Kaihlavirta
  • 254字
  • 2021-07-02 23:07:24

The for loop

The for loops are slightly different from the same construct in C-like languages. In C, the for loops consist of three things: an initialization, a stopping condition, and a stepping instruction. Rust for loops are a bit higher-level though: they are for iterating through sequences.

Let's take a simple example to start with—a loop that goes from 0 to 10 and outputs the value:

for x in 0..10 
{ 
    println!("{},", x); 
} 

We create a variable x that takes an element from the range (0..10), one by one, and does something with it. In Rust terminology, 0..10 is not only a variable but also an iterator, as it gives back a value from a series of elements.

This is obviously a very simple example. We can also define the iterator to work in the opposite direction. In C, you will expect something akin to for (i = 10; i > 0; --i). In Rust, we use the rev() method to reverse the iterator, as follows:

for x in (0..10).rev() 
{ 
    println!("{},", x); 
}  

It is worth noting that the range excludes the last number. So, for the previous example, the values outputted are 9 to 0; essentially, the program generates the output values from 0 to 10 and then outputs them in reverse.

The general syntax for the for loops is as follows:

for var in sequence
{ // do something }

The C# equivalent for the preceding code is as follows:

foreach(var t in conditionsequence) 
     // do something  
主站蜘蛛池模板: 上思县| 尉犁县| 专栏| 全椒县| 保定市| 乃东县| 玛多县| 南部县| 福安市| 安平县| 陆良县| 淮北市| 梓潼县| 余江县| 平安县| 修水县| 晋中市| 浦东新区| 河北省| 英山县| 哈巴河县| 兴安县| 烟台市| 萨嘎县| 农安县| 重庆市| 白城市| 方山县| 霞浦县| 蒙城县| 威信县| 巴楚县| 格尔木市| 灵武市| 聂拉木县| 视频| 泾源县| 南充市| 岑溪市| 泰安市| 石首市|