C# Jagged Arrays

In C#, jagged array is also known as "array of arrays" because its elements are arrays. The element size of jagged array can be different.

Declaration

Let's see an example to declare jagged array that has two elements.

int[][] arr = new int[2][];

Initialization

Let's see an example to initialize jagged array. The size of elements can be different.

snippet
arr[0] = new int[4];
        arr[1] = new int[6];

Initialization and filling elements in Jagged array

Example #1

Let's see an example to initialize and fill elements in jagged array.

snippet
arr[0] = new int[4] { 11, 21, 56, 78 };       
arr[1] = new int[6] { 42, 61, 37, 41, 59, 63 };

Here, size of elements in jagged array is optional. So, you can write above code as given below:

snippet
arr[0] = new int[] { 11, 21, 56, 78 };       
arr[1] = new int[] { 42, 61, 37, 41, 59, 63 };
Example #2

Let's see a simple example of jagged array in C# which declares, initializes and traverse jagged arrays.

snippet
public class JaggedArrayTest
{
    public static void Main()
    {
        int[][] arr = new int[2][];// Declare the array

        arr[0] = new int[] { 11, 21, 56, 78 };// Initialize the array        
        arr[1] = new int[] { 42, 61, 37, 41, 59, 63 };

        // Traverse array elements
        for (int i = 0; i < arr.Length; i++)
        {
            for (int j = 0; j < arr[i].Length; j++)
            {
                System.Console.Write(arr[i][j]+" ");
            }
            System.Console.WriteLine();
        }
    }
}
Output
11 21 56 78 42 61 37 41 59 63

Initialization of Jagged array upon Declaration

Example #3

Let's see an example to initialize the jagged array while declaration.

snippet
int[][] arr = new int[3][]{
        new int[] { 11, 21, 56, 78 },
        new int[] { 2, 5, 6, 7, 98, 5 },
        new int[] { 2, 5 }
        };
Example #4

Let's see a simple example of jagged array which initializes the jagged arrays upon declaration.

snippet
public class JaggedArrayTest
{
    public static void Main()
    {
        int[][] arr = new int[3][]{
        new int[] { 11, 21, 56, 78 },
        new int[] { 2, 5, 6, 7, 98, 5 },
        new int[] { 2, 5 }
        };

        // Traverse array elements
        for (int i = 0; i < arr.Length; i++)
        {
            for (int j = 0; j < arr[i].Length; j++)
            {
                System.Console.Write(arr[i][j]+" ");
            }
            System.Console.WriteLine();
        }
    }
}
Output
11 21 56 78 2 5 6 7 98 5 2 5
Related Tutorial
Follow Us
https://www.facebook.com/Rookie-Nerd-638990322793530 https://twitter.com/RookieNerdTutor https://plus.google.com/b/117136517396468545840 #
Contents +