C# Loop Over String ArrayLoop over the elements in string arrays using for and foreach. Understand the benefits of foreach.
Loop, string array. The for and foreach loops can iterate over string arrays. We must choose between these 2 loops in many C# programs.
Loop notes. The foreach-loop has the simplest syntax, but this comes with some limitations. The for-loop uses an iteration variable, which can lead to complexity and errors.
Example. In almost every program you have a string array, you will need to loop over the individual string elements. The simplest way of looping over the elements is with foreach.
Note The code is a complete C# console program. The string array is initialized and 4 values are inserted into it.
Foreach A foreach-loop iterates over each string in the array. The 4 values are printed to the console.
C# program that loops over string array
using System; class Program { static void Main() { string[] arr = new string[4]; // Initialize. arr[0] = "one"; // Element 1. arr[1] = "two"; // Element 2. arr[2] = "three"; // Element 3. arr[3] = "four"; // Element 4. // Loop over strings. foreach (string s in arr) { Console.WriteLine(s); } } }
one two three four
Example 2. Next, we use the for-loop to accomplish the same task. The syntax is different and for-loops have some advantages. There is usually not a significant difference in performance.
Here This example initializes a string array with 4 elements with Spanish numbers.
For 1 Here we loop over the string array with the for-loop construct, going from start to end. The loop starts at 0.
For 2 The second loop walks over the strings backwards. It starts at the last index, which is one less than the length. It decrements.
C# program that loops with for-loop
using System; class Program { static void Main() { string[] arr = new string[4]; // Initialize. arr[0] = "uno"; // First element. arr[1] = "dos"; // Second. arr[2] = "tres"; // Third. arr[3] = "cuatro"; // Fourth. // Loop over strings. for (int i = 0; i < arr.Length; i++) { string s = arr[i]; Console.WriteLine(s); } // Loop over strings backwards. for (int i = arr.Length - 1; i >= 0; i--) { string s = arr[i]; Console.WriteLine(s); } } }
uno dos tres cuatro cuatro tres dos uno
Discussion. There is not a significant performance difference between most for and foreach-loops. Here is a short summary of the 2 different looping constructs.
Foreach Simpler syntax makes fewer typos likely. You can use custom enumerators. You can change the internal looping mechanism.
For Usually equal in speed or faster. You can check the previous or next elements. You can loop in reverse.
Summary. We saw ways to loop over string arrays in the C# language. The code to loop over your arrays is usually similar to this, except the type declarations will be different.
© 2007-2021 sam allen.
see site info on the changelog.