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.
Let's see an example to declare jagged array that has two elements.
int[][] arr = new int[2][];
Let's see an example to initialize jagged array. The size of elements can be different.
arr[0] = new int[4];
arr[1] = new int[6];
Let's see an example to initialize and fill elements in jagged array.
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:
arr[0] = new int[] { 11, 21, 56, 78 };
arr[1] = new int[] { 42, 61, 37, 41, 59, 63 };
Let's see a simple example of jagged array in C# which declares, initializes and traverse jagged arrays.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
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++)
{
Console.Write(arr[i][j] + " ");
}
Console.WriteLine();
}
Console.WriteLine("Press Enter Key to Exit..");
Console.ReadLine();
}
}
}
Output:
Let's see an example to initialize the jagged array while declaration.
int[][] arr = new int[3][]{
new int[] { 11, 21, 56, 78 },
new int[] { 2, 5, 6, 7, 98, 5 },
new int[] { 2, 5 }
};
Let's see a simple example of jagged array which initializes the jagged arrays upon declaration.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace HelloWorld
{
class Program
{
static void Main(string[] args)
{
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();
}
Console.WriteLine("Press Enter Key to Exit..");
Console.ReadLine();
}
}
}
Output: