Iteration statements are code blocks that executes instructions in a loop.
There a 4 types of iteration statements
- For
- Foreach
- While
- Do... While
For
The for
loop keeps executing until a certain condition is met.
for(<initializer>; <condition>; <iterator>)
{
// Code to be executed
}
Initializer
Creates and initialize a variable to be used inside the for
loop. This variable cannot be accessed from outside.
Condition
A boolean expression that must return either true or false. The loop will keep executing until this expression returns false
.
Iterator
Defines the incremental or decremental of Initializer variable.
Example
Iterator adds a value to i each loop.
for(int i = 0; i < 10; i++)
{
Console.WriteLine("Value of i: {0}", i);
}
Iterator removes a value of i
each loop.
for(int i = 10; i > 10; i--)
{
Console.WriteLine("Value of i: {0}", i);
}
Initializer can be declared outside the for loop
In this scenario, the i
variable can be accessed outise the loop
int i = 0;
for(; i < 10; i++)
{
Console.WriteLine("Value of i: {0}", i);
}
Iterator can be managed inside the loop
for(int i = 0; i < 10; )
{
Console.WriteLine("Value of i: {0}", i);
i++;
}
Iterator managed insithe the loop and initializer variable declared outside the for loop
int i = 0
for(; i < 10; )
{
Console.WriteLine("Value of i: {0}", i);
i++;
}
Initializer, Condition and Iterator are managed ooutside the parenthesis
int i = 0;
for(;;)
{
if(i < 10)
{
Console.WriteLine("Value of i: {0}", i);
i++;
}
else
break; // force exit from loop
}
Working with arrays
int[] array = new [] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
for(int i = 0; i < array.Count - 1; i ++)
{
int currentItem = array[i];
Console.WriteLine("Current value of item inside array is: " + currentItem);
}
In the example above we're using the .Count
property of the array to know how many items are inside it.
Since arrays index start at 0, we use remove one iteration with - 1
, without it, the for looop will look for an item that does not exists in the array and trhow an error.
To better exemplify this
int[] array = new [] { 1, 2, 3 };
Console.WriteLine(array[0]); // Outputs 1
Console.WriteLine(array[1]); // Outputs 2
Console.WriteLine(array[2]); // Outputs 3
Foreach
The foreach
loop iterates through each item inside a collection.
The DataType
must match the type of the collection you're iterating.
foreach(<DataType> <variableName> in <collection)
{
// code
}
Example
int[] array = new [] { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
foreach(int i in array)
{
Console.WriteLine("Current value of i is: " + i);
}
While
In the while
loop, the code block will run until the condition returns true.
while(<condition>)
{
// Code
}
Example
Execute the instrunction until i
is smaller than 1
int i = 0; // initializer
while(i < 10) // condition
{
Console.WriteLine("Value of i: " + i);
i++; // iterator
}
Using a boolean variable
int i = 0;
bool isBiggerThan10 = false;
while(isBiggerThan10)
{
Console.WriteLine("Value of i: " + i);
i++; // iterator
isBiggerThan10 = i > 10; // Checks if i is bigger than 10 and assing the result to the variable.
}
Do... While
The difference between while
and do...while
, is that while
checks the condition before executing, and do...while
always executes at least once.
do
{
// Code
} while(<condition>)
Examples
int i = 0;
do
{
Console.WriteLine("i = {0}", i);
i++;
} while (i < 10);
Top comments (0)