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

ตัวอย่าง Array ใน C# ที่ดี (Best Practices)

Array ใช้เก็บข้อมูลชุดหนึ่ง ในหน่วยความจำที่ติดกัน ตัวอย่างการใช้งาน Array ที่น่าสนใจ:

1. หาองค์ประกอบร่วมใน 3 Sorted Arrays

using System;
class Demo
{
    static void commonElements(int[] one, int[] two, int[] three)
    {
        int i = 0, j = 0, k = 0;
        while (i < one.Length && j < two.Length && k < three.Length)
        {
            if (one[i] == two[j] && two[j] == three[k])
            {
                Console.Write(one[i] + " ");
                i++; j++; k++;
            }
            else if (one[i] < two[j]) i++;
            else if (two[j] < three[k]) j++;
            else k++;
        }
    }
    public static void Main()
    {
        int[] one = {20, 35, 57, 70};
        int[] two = {9, 35, 57, 70, 92};
        int[] three = {25, 35, 55, 57, 67, 70};
        Console.Write("Common elements: ");
        commonElements(one, two, three);
    }
}

2. สร้าง Array แบบ Dynamic ด้วย ArrayList

using System;
using System.Collections;
namespace CollectionApplication
{
    class Program
    {
        static void Main(string[] args)
        {
            ArrayList al = new ArrayList();
            al.Add(99); al.Add(47); al.Add(64);
            Console.WriteLine("Count: {0}", al.Count);
            Console.Write("List: ");
            foreach (int i in al) Console.Write(i + " ");
            Console.ReadKey();
        }
    }
}

3. Jagged Arrays และการเข้าถึงองค์ประกอบ

using System;
namespace ArrayApplication
{
    class MyArray
    {
        static void Main(string[] args)
        {
            int[][] points = new int[][]{new int[]{10,5},new int[]{30,40}, new int[]{70,80},new int[]{60,70}};
            int i, j;
            for (i = 0; i < 3; i++)
                for (j = 0; j < 2; j++)
                    Console.WriteLine("a[{0}][{1}] = {2}", i, j, points[i][j]);
            int x = points[0][1]; // เข้าถึง
            Console.WriteLine(x);
            Console.ReadKey();
        }
    }
}