Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C#

หา Rank (จำนวนมิติ) ของ Array ใน C#

ภาพรวม

ใช้ Property Rank ของ Array เพื่อหาจำนวนมิติ (Dimensions) - 1D=1, 2D=2, 3D=3, ฯลฯ

โค้ดตัวอย่าง


using System;

class Demo {
    static void Main() {
        // 1D Array
        int[] arr1D = new int[5];
        Console.WriteLine($"1D Array Rank: {arr1D.Rank}"); // 1

        // 2D Array (Rectangular)
        int[,] arr2D = new int[3, 4];
        Console.WriteLine($"2D Array Rank: {arr2D.Rank}"); // 2

        // 3D Array
        int[,,] arr3D = new int[2, 3, 4];
        Console.WriteLine($"3D Array Rank: {arr3D.Rank}"); // 3

        // Jagged Array (Array of Arrays) - Rank = 1
        int[][] jagged = new int[3][];
        jagged[0] = new int[2];
        jagged[1] = new int[3];
        jagged[2] = new int[4];
        Console.WriteLine($"Jagged Array Rank: {jagged.Rank}"); // 1 (เป็น 1D array ของ arrays)
    }
}

ผลลัพธ์


1D Array Rank: 1
2D Array Rank: 2
3D Array Rank: 3
Jagged Array Rank: 1

คุณสมบัติอื่นๆ ที่เกี่ยวข้อง


int[,] arr = new int[3, 4];

Console.WriteLine($"Rank: {arr.Rank}");           // 2
Console.WriteLine($"Length: {arr.Length}");       // 12 (total elements)
Console.WriteLine($"GetLength(0): {arr.GetLength(0)}"); // 3 (rows)
Console.WriteLine($"GetLength(1): {arr.GetLength(1)}"); // 4 (cols)
Console.WriteLine($"GetLowerBound(0): {arr.GetLowerBound(0)}"); // 0
Console.WriteLine($"GetUpperBound(0): {arr.GetUpperBound(0)}"); // 2
Console.WriteLine($"GetLowerBound(1): {arr.GetLowerBound(1)}"); // 0
Console.WriteLine($"GetUpperBound(1): {arr.GetUpperBound(1)}"); // 3

ผลลัพธ์เพิ่มเติม


Rank: 2
Length: 12
GetLength(0): 3
GetLength(1): 4
GetLowerBound(0): 0
GetUpperBound(0): 2
GetLowerBound(1): 0
GetUpperBound(1): 3

สรุป

  • Rank: จำนวนมิติ (dimensions)
  • Length: จำนวน elements ทั้งหมด (product of all dimensions)
  • GetLength(dimension): ขนาดของมิติที่ระบุ (0-based)
  • GetLowerBound/GetUpperBound: ขอบเขตดัชนี (มักเป็น 0 และ Length-1)
  • Jagged array (int[][]) มี Rank = 1 เพราะเป็น array ของ arrays