Jagged array (int[][]) có Length = số hàng (số mảng con). Mỗi hàng có Length riêng.
Ví dụ minh họa
using System;
class Program
{
static void Main()
{
int[][] jagged = new int[][]
{
new int[] { 0, 0 },
new int[] { 1, 2 },
new int[] { 2, 4 },
new int[] { 3, 6 },
new int[] { 4, 8 }
};
Console.WriteLine($"Rank: {jagged.Rank}"); // 1
Console.WriteLine($"Length (số hàng): {jagged.Length}"); // 5
Console.WriteLine($"GetUpperBound(0): {jagged.GetUpperBound(0)}"); // 4
Console.WriteLine($"GetLowerBound(0): {jagged.GetLowerBound(0)}"); // 0
Console.WriteLine("\nĐộ dài từng hàng:");
for (int i = 0; i < jagged.Length; i++)
{
Console.WriteLine($" Hàng {i}: Length = {jagged[i].Length}");
}
// Jagged array thực sự (hàng độ dài khác nhau)
Console.WriteLine("\n--- Jagged array không đều ---");
int[][] uneven = {
new int[] { 1 },
new int[] { 1, 2 },
new int[] { 1, 2, 3 },
new int[] { 1, 2, 3, 4 }
};
Console.WriteLine($"Số hàng: {uneven.Length}");
for (int i = 0; i < uneven.Length; i++)
Console.WriteLine($" Hàng {i}: {uneven[i].Length} phần tử");
}
}
Kết quả đầu ra
Rank: 1 Length (số hàng): 5 GetUpperBound(0): 4 GetLowerBound(0): 0 Độ dài từng hàng: Hàng 0: Length = 2 Hàng 1: Length = 2 Hàng 2: Length = 2 Hàng 3: Length = 2 Hàng 4: Length = 2 --- Jagged array không đều --- Số hàng: 4 Hàng 0: 1 phần tử Hàng 1: 2 phần tử Hàng 2: 3 phần tử Hàng 3: 4 phần tử
Phân biệt: Jagged array ([][]) Rank=1, mỗi hàng Length khác nhau. Multi-dimensional array ([,]) Rank>1, hình chữ nhật, Length = tổng phần tử.