อาร์เรย์กับรายการ: การเปรียบเทียบการใช้งานใน C#

Xarrey Kab Raykar Kar Periyb Theiyb Kar Chi Ngan Ni C



อาร์เรย์ใน C# คือชุดของรายการที่มีประเภทข้อมูลที่เหมือนกันและมีขนาดเฉพาะที่กำหนดไว้ มันแสดงถึงหน่วยความจำที่อยู่ติดกันซึ่งมีการบันทึกองค์ประกอบต่างๆ ด้วยการใช้ดัชนี อาร์เรย์ใน C# ช่วยให้เข้าถึงสมาชิกได้อย่างรวดเร็วและง่ายดาย รายการคือโครงสร้างข้อมูลแบบไดนามิกในภาษาการเขียนโปรแกรม C# ที่แสดงถึงกลุ่มของส่วนประกอบที่มีประเภทเหมือนกัน ต่างจากอาร์เรย์ตรงที่รายการสามารถขยายหรือลดขนาดแบบไดนามิก ซึ่งช่วยให้เพิ่ม ลบ และแก้ไของค์ประกอบได้อย่างมีประสิทธิภาพ ทั้งความเหมือนและความแตกต่างระหว่างอาร์เรย์ C# และรายการ C# ครอบคลุมอยู่ในบทความนี้

คำประกาศ:

อาร์เรย์ถูกประกาศโดยใช้ “type[] ArrayName;” ไวยากรณ์ที่ประเภทหมายถึงประเภทของสมาชิกในคอลเลกชันอาร์เรย์ และ 'ArrName' คือชื่อที่กำหนดให้กับอาร์เรย์ การประกาศอาร์เรย์จะแสดงด้วยวงเล็บเหลี่ยม []

พิมพ์ [ ] ชื่ออาร์เรย์ = ชนิดใหม่ [ ] ;

รายการจะถูกประกาศโดยใช้ “List LsName;” ไวยากรณ์ที่ประเภทแสดงถึงประเภทข้อมูลขององค์ประกอบในรายการ และ 'LsName' คือชื่อที่กำหนดให้กับรายการ วงเล็บเหลี่ยม ระบุว่าเป็นการประกาศประเภททั่วไป







รายการ < พิมพ์ > รายชื่อ = รายการใหม่ < พิมพ์ > ( ) ;

การเริ่มต้น:

อาร์เรย์ใช้เครื่องหมายปีกกา {} เพื่อล้อมรอบค่า ในขณะที่รายการใช้ตัวสร้าง List ใหม่ตามด้วยเครื่องหมายปีกกา {} เพื่อล้อมรอบค่า



พิมพ์ [ ] ชื่ออาร์เรย์ = { เวอร์ชัน 1 , เวอร์ชัน 2 , v3 , ... } ;

รายการ < พิมพ์ > รายชื่อ = รายการใหม่ < พิมพ์ > { เวอร์ชัน 1 , เวอร์ชัน 2 , v3 , ... } ;

การเพิ่มมูลค่า:

สิ่งสำคัญคือต้องจำไว้ว่าอาร์เรย์ C# มีขนาดเฉพาะ หากต้องการขนาดอื่น จะต้องสร้างอาร์เรย์ใหม่ “newArr” ด้วยขนาดที่ต้องการ (ความยาวปัจจุบัน + จำนวนค่าใหม่) เพิ่มอาร์เรย์ดั้งเดิม “OrgArr” ให้กับอาร์เรย์ใหม่และกำหนดค่าใหม่ให้กับตำแหน่งใหม่ในอาร์เรย์ใหม่และอัปเดตการอ้างอิงไปยังอาร์เรย์ใหม่



อาร์เรย์ สำเนา ( องค์กรอาร์ , ใหม่Arr , องค์กรอาร์. ความยาว ) ;

ใหม่Arr [ องค์กรอาร์. ความยาว ] = 14 ; // ค่าใหม่

ใหม่Arr [ องค์กรอาร์. ความยาว + 1 ] = 2 ; // ค่าใหม่

องค์กรอาร์ = ใหม่Arr ; // อัปเดตการอ้างอิง int[] NewArr = new int[OrgArr.Length + 2];

รายการมีความยืดหยุ่นในแง่ของการจัดการขนาด เมื่อเตรียมใช้งานรายการ รายการจะเริ่มต้นด้วยความจุเริ่มต้น แต่สามารถขยายได้โดยอัตโนมัติเมื่อมีการเพิ่มองค์ประกอบเพิ่มเติม ความสามารถในการปรับขนาดแบบไดนามิกนี้ช่วยให้รายการสามารถปรับให้เข้ากับข้อกำหนดที่เปลี่ยนแปลงได้ รายการ C# มีฟังก์ชัน Add() เพื่อเพิ่มค่าลงในรายการ ต่อไปนี้คือวิธีที่คุณสามารถเพิ่มค่าลงในรายการ C#:





อาร์เรย์เทียบกับรายการ : : การเปรียบเทียบการใช้งานในภาษาซี #

การเข้าถึงค่าต่างๆ

ค่าในหมายเลขอาร์เรย์เข้าถึงได้โดยใช้สัญลักษณ์ดัชนี [] กล่าวคือ ใช้หมายเลขดัชนีในวงเล็บและบันทึกลงในตัวแปรอื่น

องค์ประกอบประเภท = ชื่ออาร์เรย์ [ ดัชนี ] ;

หากต้องการเข้าถึงค่าในรายการ C# คุณยังสามารถใช้สัญลักษณ์ดัชนี [] พร้อมกับตำแหน่งดัชนีที่ต้องการซึ่งคล้ายกับอาร์เรย์ได้



องค์ประกอบประเภท = รายชื่อ [ ดัชนี ] ;

การลบค่า

อาร์เรย์มีความยาวที่กำหนด ดังนั้น ในการลบองค์ประกอบออก จะต้องสร้างอาร์เรย์ใหม่ที่มีขนาดน้อยกว่า และต้องคัดลอกองค์ประกอบที่มีอยู่ ซึ่งสามารถทำได้โดยใช้ฟังก์ชัน Array.Copy() ตามที่อธิบายไว้ในส่วน 'การเพิ่มค่า' ในรายการ C# การลบค่าจะง่ายกว่าและใช้งานง่ายกว่ามาก คลาส List มีเมธอด 'remove' ที่ช่วยให้คุณสามารถลบค่าเฉพาะออกจากรายการได้

รายชื่อ. ลบ ( องค์ประกอบ ) ;

นับค่า

ในการนับค่าในอาร์เรย์ C# คุณอาจใช้แอตทริบิวต์ความยาวของอาร์เรย์ คุณสมบัติ length ให้จำนวนค่าทั้งหมดในอาร์เรย์

ภายใน นับ = arrayName. ความยาว ;

หากต้องการนับค่าในรายการ C# คุณสามารถใช้คุณลักษณะ 'นับ' ของรายการได้ จำนวนองค์ประกอบทั้งหมดที่มีอยู่ในรายการจะถูกส่งกลับโดยแอตทริบิวต์ 'count' เช่นเดียวกัน

ภายใน นับ = รายชื่อ. นับ ;

ย้ำค่านิยม

หากต้องการวนซ้ำค่าในอาร์เรย์ C# คุณสามารถใช้การวนซ้ำ “for” โดยมีความยาวของอาร์เรย์เป็นเงื่อนไขการวนซ้ำ

สำหรับ ( ภายใน ฉัน = 0 ; ฉัน < ชื่ออาร์เรย์. ความยาว ; ฉัน ++ ) {

พิมพ์จ = arrayName [ ฉัน ] ;

คอนโซล เขียนไลน์ ( มันคือ ) ;

}

หากต้องการวนซ้ำค่าในรายการ C# คุณสามารถใช้ลูป 'foreach' เนื่องจากจะทำให้กระบวนการวนซ้ำง่ายขึ้นโดยการวนซ้ำองค์ประกอบโดยอัตโนมัติ

แต่ละ ( พิมพ์ e ใน listName ) {

คอนโซล เขียนไลน์ ( มันคือ ) ;

}

ตัวอย่างที่ 1: อาร์เรย์ C#

รหัสที่กำหนดประกาศและเริ่มต้นอาร์เรย์จำนวนเต็มชื่อ 'Arr' ที่มีความยาว 5 และกำหนดค่าให้กับองค์ประกอบ ค่าที่กำหนดให้กับองค์ประกอบอาร์เรย์คือ 11, 12, 13, 14 และ 15 จากนั้นโค้ดจะดำเนินการเพื่อแสดงองค์ประกอบของอาร์เรย์โดยใช้ลูป 'for' ทุกองค์ประกอบจะแสดงบนบรรทัดที่แตกต่างกันโดยใช้เมธอด Console.WriteLine()

หลังจากแสดงองค์ประกอบดั้งเดิมแล้ว โค้ดจะแก้ไของค์ประกอบที่ดัชนี 2 โดยกำหนดค่าใหม่เป็น 10 ต่อไป โค้ดจะแสดงอาร์เรย์ที่แก้ไขโดยการวนซ้ำองค์ประกอบต่างๆ อีกครั้งโดยใช้ลูป 'for' สุดท้ายนี้ โค้ดจะแสดงจำนวนค่าทั้งหมดที่อยู่ในอาร์เรย์โดยใช้คุณสมบัติ 'Arr.Length' ซึ่งให้ค่าตามความยาวของอาร์เรย์

โดยใช้ระบบ ;

คลาสดัมมี่ {

คงที่ เป็นโมฆะ หลัก ( ) {

ภายใน [ ] อาร์ = ใหม่ ภายใน [ 5 ] { สิบเอ็ด , 12 , 13 , 14 , สิบห้า } ;

คอนโซล เขียนไลน์ ( 'องค์ประกอบ:' ) ;

สำหรับ ( ภายใน ฉัน = 0 ; ฉัน < อาร์. ความยาว ; ฉัน ++ )

{

คอนโซล เขียนไลน์ ( อาร์ [ ฉัน ] ) ;

}

อาร์ [ 2 ] = 10 ;

คอนโซล เขียนไลน์ ( 'อาร์เรย์ที่แก้ไขแล้ว:' ) ;

สำหรับ ( ภายใน ฉัน = 0 ; ฉัน < อาร์. ความยาว ; ฉัน ++ )

{

คอนโซล เขียนไลน์ ( อาร์ [ ฉัน ] ) ;

}

คอนโซล เขียนไลน์ ( 'จำนวนองค์ประกอบ: ' + อาร์. ความยาว ) ;

}

}

ตัวอย่างที่ 2: รายการ C#

รหัสที่ให้มาต่อไปนี้สาธิตการใช้งานรายการ C# เพื่อจัดเก็บและจัดการคอลเลกชันของจำนวนเต็ม ขั้นแรก โค้ดจะเริ่มต้นรายการชื่อ “Arr” ด้วยจำนวนเต็ม 5 ตัว ได้แก่ 11, 12, 13, 14 และ 15 ซึ่งสามารถทำได้โดยใช้คลาส List และตัวสร้างพร้อมกับไวยากรณ์ของตัวเริ่มต้น

จากนั้น โปรแกรมจะพิมพ์ข้อความ “Elements:” และดำเนินการวนซ้ำแต่ละองค์ประกอบในรายการโดยใช้ลูป “foreach” ในระหว่างการวนซ้ำแต่ละครั้ง องค์ประกอบปัจจุบันจะถูกพิมพ์ไปยังคอนโซลโดยใช้เมธอด Console.WriteLine()

หลังจากนั้นโค้ดจะแก้ไขค่าที่ดัชนี 2 ของรายการโดยกำหนดค่าให้เท่ากับ 10 (Arr[2] = 10) บรรทัดนี้เปลี่ยนองค์ประกอบที่สามในรายการจาก 13 เป็น 10 หลังจากการแก้ไข โปรแกรมจะพิมพ์ข้อความ 'รายการแก้ไข:' อีกครั้ง และวนซ้ำรายการที่อัปเดต โดยพิมพ์แต่ละองค์ประกอบไปยังคอนโซล รหัสจะแสดงจำนวนค่าในรายการโดยใช้ 'Arr.Count' คุณสมบัตินี้ส่งคืนจำนวนรายการที่มีอยู่ในรายการซึ่งในสถานการณ์ต่อไปนี้ เกิดขึ้นเป็น 5

สุดท้ายนี้ โค้ดจะลบองค์ประกอบที่มีค่า 4 ออกจากรายการโดยใช้เมธอด Arr.Remove(4) เมธอดนี้ค้นหาค่าที่ระบุในรายการและลบค่าที่เกิดขึ้นครั้งแรกออก สุดท้าย โปรแกรมจะพิมพ์ข้อความ “List after removal:” และวนซ้ำรายการอีกครั้ง โดยแสดงแต่ละองค์ประกอบที่เหลือหลังการดำเนินการลบ

โดยใช้ระบบ ;

โดยใช้ระบบ คอลเลกชัน . ทั่วไป ;

คลาสดัมมี่ {

คงที่ เป็นโมฆะ หลัก ( ) {

รายการ < ภายใน > อาร์ = รายการใหม่ < ภายใน > ( ) { สิบเอ็ด , 12 , 13 , 14 , สิบห้า } ;

คอนโซล เขียนไลน์ ( 'องค์ประกอบ:' ) ;

แต่ละ ( ภายใน n ในอาร์ )

{

คอนโซล เขียนไลน์ ( n ) ;

}

อาร์ [ 2 ] = 10 ;

คอนโซล เขียนไลน์ ( 'รายการที่แก้ไข:' ) ;

แต่ละ ( ภายใน n ในอาร์ )

{

คอนโซล เขียนไลน์ ( n ) ;

}

คอนโซล เขียนไลน์ ( 'จำนวนองค์ประกอบ: ' + อาร์. นับ ) ;

อาร์. ลบ ( 4 ) ;

คอนโซล เขียนไลน์ ( 'รายการหลังการลบ:' ) ;

แต่ละ ( ภายใน n ในอาร์ )

{

คอนโซล เขียนไลน์ ( n ) ;

}

}

}

บทสรุป

คู่มือนี้ครอบคลุมถึงความแตกต่างทางไวยากรณ์พื้นฐานระหว่างอาร์เรย์ C# และรายการ C# อาร์เรย์มีความยาวคงที่และเข้าถึงได้โดยดัชนี ในขณะที่รายการจะมีขนาดแบบไดนามิกและให้วิธีการเพิ่มเติมในการเพิ่มและลบองค์ประกอบ นอกจากนั้น เรายังจัดเตรียมโปรแกรมรายการ C# ที่แสดงการประกาศ การเริ่มต้น การเข้าถึง การแก้ไข การนับ และการเพิ่มองค์ประกอบ