Latest web development tutorials
×

C# หลักสูตร

C# หลักสูตร C# แนะนำโดยย่อ C# สิ่งแวดล้อม C# โครงสร้างหลักสูตร C# ไวยากรณ์พื้นฐาน C# ชนิดข้อมูล C# ประเภทการแปลง C# ตัวแปร C# คงที่ C# ผู้ประกอบการ C# ผู้พิพากษา C# การไหลเวียน C# บรรจุภัณฑ์ C# ทาง C# ประเภท nullable C# แถว(Array) C# เชือก(String) C# โครงสร้าง(Struct) C# แจกแจง(Enum) C# หมวดหมู่(Class) C# สืบทอด C# polymorphism C# ดำเนินงานมาก C# อินเตอร์เฟซ(Interface) C# namespaces(Namespace) C# สั่ง preprocessor C# นิพจน์ปกติ C# การจัดการข้อยกเว้น C# input และ output ไฟล์

C# การสอนที่ทันสมัย

C# คุณสมบัติ(Attribute) C# การสะท้อนกลับ(Reflection) C# คุณสมบัติ(Property) C# ทำดัชนี(Indexer) C# มอบความไว้วางใจ(Delegate) C# เหตุการณ์(Event) C# ตั้งค่า(Collection) C# ยาชื่อสามัญ(Generic) C# วิธีการที่ไม่ระบุชื่อ C# รหัสที่ไม่ปลอดภัย C# multithreading

C # ทำดัชนี (ดัชนี)

ดัชนี (ดัชนี) ช่วยให้วัตถุเช่นอาร์เรย์สามารถจัดทำดัชนีเมื่อคุณกำหนดทำดัชนีสำหรับการเรียนด้วยการกระทำชั้นจะเป็นเช่นอาร์เรย์เสมือน (อาร์เรย์เสมือน) เดียวกัน คุณสามารถใช้ประกอบการเข้าถึงอาร์เรย์ ([]) ในการเข้าถึงอินสแตนซ์ของชั้นเรียน

ไวยากรณ์

ดัชนีมิติไวยากรณ์ต่อไปนี้:

องค์ประกอบประเภทนี้ [int ดัชนี] 
{
   // รับการเข้าถึงได้รับ 
   {
      // ส่งกลับค่าของดัชนีที่ระบุ}

   // ชุดเข้าถึงการตั้งค่า 
   {
      // กำหนดค่าของดัชนีที่ระบุ}
}

ดัชนี (ดัชนี) ใช้

การกระทำคำสั่งในลักษณะที่คล้ายกับสถานที่ให้บริการทำดัชนี (ทรัพย์สิน) อสังหาริมทรัพย์ (อสังหาริมทรัพย์) ที่คุณสามารถใช้เพื่อกำหนดSET Index และได้รับการเข้าถึงเช่นแต่คุณสมบัติที่จะถูกส่งกลับหรือตั้งค่าข้อมูลสมาชิกที่เฉพาะเจาะจงและผลตอบแทนดัชนีหรือการตั้งค่าตัวอย่างวัตถุให้เป็นค่าที่เฉพาะเจาะจง ในคำอื่น ๆ ก็เป็นเช่นข้อมูลจะถูกแบ่งออกเป็นส่วนที่มีขนาดเล็กและเป็นส่วนหนึ่งของดัชนีแต่ละได้รับหรือการตั้งค่าแต่ละส่วน

ความหมายของแอตทริบิวต์ (ทรัพย์สิน) ประกอบด้วยการให้ชื่อคุณสมบัติ เมื่อดัชนีไม่ได้กำหนดที่มีชื่อแต่มีคีย์นี้ซึ่งชี้ไปเช่นวัตถุตัวอย่างต่อไปนี้แสดงให้เห็นถึงแนวคิดนี้:

การใช้ระบบ
IndexerApplication namespace
{
   IndexedNames ระดับ
   {
      ส่วนตัว String [] = namelist สตริงใหม่ [ขนาด];
      ขนาด int สาธารณะคงที่ = 10;
      IndexedNames สาธารณะ ()
      {
         for (int i = 0; i <ขนาด; i ++)
         namelist [I] = "NA";
      }
      สตริงสาธารณะ [int ดัชนี]
      {
         ได้รับ
         {
            สตริง tmp;

            ถ้า (ดัชนี> = 0 && ดัชนี <= ขนาด-1)
            {
               tmp = namelist [ดัชนี];
            }
            อื่น
            {
               tmp = "";
            }

            ผลตอบแทน (tmp);
         }
         ชุด
         {
            ถ้า (ดัชนี> = 0 && ดัชนี <= ขนาด-1)
            {
               namelist [ดัชนี] = ค่า;
            }
         }
      }

      เป็นโมฆะคง main (String args [])
      {
         ชื่อ IndexedNames = IndexedNames ใหม่ ();
         ชื่อ [0] = "ซาร่า";
         ชื่อ [1] = "Riz";
         ชื่อ [2] = "Nuha";
         ชื่อ [3] = "ราวกับ";
         ชื่อ [4] = "Davinder";
         ชื่อ [5] = "นิล";
         ชื่อ [6] = "Rubic";
         for (int i = 0; i <IndexedNames.size; i ++)
         {
            Console.WriteLine (ชื่อ [I]);
         }
         Console.ReadKey ();
      }
   }
}

เมื่อโค้ดข้างต้นจะรวบรวมและดำเนินการก็จะก่อให้เกิดผลลัพธ์ต่อไปนี้:

ซาร่า
Riz
Nuha
ราวกับ
Davinder
นิล
Rubic
nanana

มากเกินไปทำดัชนี (ดัชนี)

ดัชนี (ดัชนี) อาจจะมากเกินไป เมื่อประกาศทำดัชนียังสามารถให้กับส่วนใหญ่ของพารามิเตอร์และแต่ละพารามิเตอร์สามารถประเภทที่แตกต่างกัน ไม่จำเป็นต้องมีสำหรับดัชนีต้องเป็นจำนวนเต็มไม่เป็น C # ช่วยให้ indexers อาจจะเป็นประเภทอื่น ๆ เช่นประเภทสตริง

ตัวอย่างต่อไปนี้แสดงให้เห็นถึงทำดัชนีเกินไป:

การใช้ระบบ
IndexerApplication namespace
{
   IndexedNames ระดับ
   {
      ส่วนตัว String [] = namelist สตริงใหม่ [ขนาด];
      ขนาด int สาธารณะคงที่ = 10;
      IndexedNames สาธารณะ ()
      {
         for (int i = 0; i <ขนาด; i ++)
         {
          namelist [I] = "NA";
         }
      }
      สตริงสาธารณะ [int ดัชนี]
      {
         ได้รับ
         {
            สตริง tmp;

            ถ้า (ดัชนี> = 0 && ดัชนี <= ขนาด-1)
            {
               tmp = namelist [ดัชนี];
            }
            อื่น
            {
               tmp = "";
            }

            ผลตอบแทน (tmp);
         }
         ชุด
         {
            ถ้า (ดัชนี> = 0 && ดัชนี <= ขนาด-1)
            {
               namelist [ดัชนี] = ค่า;
            }
         }
      }
      int สาธารณะ [ชื่อสตริง]
      {
         ได้รับ
         {
            ดัชนี int = 0;
            ในขณะที่ (ดัชนี <size)
            {
               ถ้า (namelist [ดัชนี] == ชื่อ)
               {
                ดัชนีผลตอบแทน;
               }
               ดัชนี ++;
            }
            ดัชนีผลตอบแทน;
         }

      }

      เป็นโมฆะคง main (String args [])
      {
         ชื่อ IndexedNames = IndexedNames ใหม่ ();
         ชื่อ [0] = "ซาร่า";
         ชื่อ [1] = "Riz";
         ชื่อ [2] = "Nuha";
         ชื่อ [3] = "ราวกับ";
         ชื่อ [4] = "Davinder";
         ชื่อ [5] = "นิล";
         ชื่อ [6] = "Rubic";
         // ใช้พารามิเตอร์แรกที่มีการทำดัชนี int for (int i = 0; i <IndexedNames.size; i ++)
         {
            Console.WriteLine (ชื่อ [I]);
         }
         // ใช้ทำดัชนีสองกับพารามิเตอร์สตริง Console.WriteLine (ชื่อ [ "Nuha"]);
         Console.ReadKey ();
      }
   }
}

เมื่อโค้ดข้างต้นจะรวบรวมและดำเนินการก็จะก่อให้เกิดผลลัพธ์ต่อไปนี้:

ซาร่า
Riz
Nuha
ราวกับ
Davinder
นิล
Rubic
nanana
2