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

วิธีเพิ่มอิลิเมนต์เข้าไปใน Jagged Array ที่มีอยู่แล้วใน C#

Jagged Array คืออาร์เรย์ของอาร์เรย์ (Array of Arrays) เพื่อเพิ่ม/แก้ไขค่า ให้เข้าถึงผ่านดัชนีสองระดับ

สมมติต้องการกำหนดค่าที่ตำแหน่ง a[3][1] (อาร์เรย์ที่ 3 ดัชนี 1):

a[3][1] = 500;

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

using System;

namespace Demo
{
    class Program
    {
        static void Main(string[] args)
        {
            int[][] x = new int[][]
            {
                new int[]{10, 20},
                new int[]{30, 40},
                new int[]{50, 60},
                new int[]{70, 80},
                new int[]{90, 100}
            };
            
            int i, j;
            
            Console.WriteLine("Old Array...");
            for (i = 0; i < 5; i++)
            {
                for (j = 0; j < 2; j++)
                {
                    Console.WriteLine("a[{0}][{1}] = {2}", i, j, x[i][j]);
                }
            }
            
            // เพิ่ม/แก้ไขค่าที่ [3][1]
            x[3][1] = 500;
            
            Console.WriteLine("New Array...");
            for (i = 0; i < 5; i++)
            {
                for (j = 0; j < 2; j++)
                {
                    Console.WriteLine("a[{0}][{1}] = {2}", i, j, x[i][j]);
                }
            }
            
            Console.ReadKey();
        }
    }
}

ผลลัพธ์

Old Array...
a[0][0] = 10 a[0][1] = 20
a[1][0] = 30 a[1][1] = 40
a[2][0] = 50 a[2][1] = 60
a[3][0] = 70 a[3][1] = 80
a[4][0] = 90 a[4][1] = 100
New Array...
a[0][0] = 10 a[0][1] = 20
a[1][0] = 30 a[1][1] = 40
a[2][0] = 50 a[2][1] = 60
a[3][0] = 70 a[3][1] = 500
a[4][0] = 90 a[4][1] = 100

หมายเหตุ

Jagged Array ใน C# มีขนาดคงที่ (Fixed Size) ไม่สามารถเพิ่มจำนวนแถวหรือคอลัมน์ได้หลังสร้างแล้ว สามารถเปลี่ยนค่าภายในได้อย่างเดียว