อาร์เรย์ VB.Net: สตริง ไดนามิกพร้อมตัวอย่าง
⚡ สรุปอย่างชาญฉลาด
อาร์เรย์ใน VB.Net จัดเก็บค่าหลายค่าที่มีชนิดข้อมูลเดียวกันภายใต้ชื่อตัวแปรเดียว โดยใช้ดัชนีที่เริ่มต้นจากศูนย์ รองรับทั้งอาร์เรย์ขนาดคงที่และอาร์เรย์แบบไดนามิก และฟังก์ชัน Split และ Join ใช้สำหรับแปลงระหว่างสตริงและอาร์เรย์
อาร์เรย์คืออะไร?
อาร์เรย์เป็นโครงสร้างข้อมูลที่ใช้จัดเก็บองค์ประกอบที่มีค่าเท่ากัน ประเภทข้อมูลองค์ประกอบต่างๆ เรียงลำดับตามลำดับ โดยองค์ประกอบแรกอยู่ที่ดัชนี 0 และองค์ประกอบสุดท้ายอยู่ที่ดัชนี n-1 โดยที่ n คือจำนวนองค์ประกอบทั้งหมดในอาร์เรย์
วิธีการประกาศและเริ่มต้นอาร์เรย์
In VB.Netอาร์เรย์จะถูกประกาศโดยใช้คำสั่ง Dim ตัวอย่างเช่น:
Dim myData() As Integer
ในตัวอย่างข้างต้น เราได้กำหนดอาร์เรย์ชื่อ myData และควรเก็บองค์ประกอบของชนิดข้อมูลจำนวนเต็ม ตัวอย่างต่อไปนี้จะสาธิตวิธีการประกาศอาร์เรย์เพื่อเก็บองค์ประกอบของสตริง:
Dim myData(10) As String
เราได้กำหนดอาร์เรย์ชื่อ myData เพื่อเก็บ 10 สตริง
เราสามารถเริ่มต้นอาร์เรย์ในขณะที่ประกาศได้ ตัวอย่างเช่น:
Dim myData() As Integer = {11, 12, 22, 7, 47, 32}
เราได้ประกาศอาร์เรย์ myData และเพิ่มองค์ประกอบจำนวนเต็ม 6 รายการลงไป สิ่งนี้สามารถทำได้สำหรับกรณีของสตริง:
Dim students() As String = {"John", "Alice", "Antony", "Gloria", "jayden"}
เราได้สร้างอาร์เรย์ชื่อนักเรียนและเพิ่มชื่อเข้าไปอีก 5 ชื่อ
อาร์เรย์ใน VB.Net แบ่งออกเป็นสองกลุ่มตามว่าขนาดของอาร์เรย์สามารถเปลี่ยนแปลงได้หลังจากการประกาศหรือไม่ กลุ่มแรกคืออาร์เรย์ที่มีขนาดคงที่
อาร์เรย์ขนาดคงที่
อาร์เรย์ที่มีขนาดคงที่มีจำนวนองค์ประกอบคงที่ ซึ่งหมายความว่าคุณต้องกำหนดจำนวนองค์ประกอบที่จะเก็บไว้ในระหว่างการกำหนด สมมติว่าคุณต้องการอาร์เรย์เพื่อเก็บชื่อนักเรียนเพียง 3 ชื่อ คุณสามารถกำหนดและเริ่มต้นอาร์เรย์ได้ดังนี้:
Dim students(0 to 2) As String students(0) = "John" students (1) = "Alice" students (2) = "Antony"
เราเริ่มต้นด้วยการประกาศอาร์เรย์สตริงชื่อ students 0 ถึง 2 ประกาศว่าอาร์เรย์จะเก็บองค์ประกอบตั้งแต่ดัชนี 0 ถึงดัชนี 2 ซึ่งหมายความว่าเราจะมีองค์ประกอบทั้งหมด 3 องค์ประกอบ
ในการเพิ่มองค์ประกอบให้กับอาร์เรย์ เราได้ใช้ชื่ออาร์เรย์และระบุดัชนีที่จะจัดเก็บองค์ประกอบนั้น ตัวอย่างเช่น ชื่อ John จะถูกเก็บไว้ที่ดัชนี 0 ของอาร์เรย์ ซึ่งหมายความว่าจะเป็นองค์ประกอบแรกของอาร์เรย์ แอนโทนีจะเป็นองค์ประกอบสุดท้ายของอาร์เรย์
เมื่อไม่ทราบจำนวนองค์ประกอบล่วงหน้า อาร์เรย์แบบไดนามิกจึงเป็นตัวเลือกที่ดีกว่า
ไดนามิกอาร์เรย์
นี่คืออาร์เรย์ที่สามารถเก็บองค์ประกอบจำนวนเท่าใดก็ได้ ขนาดอาร์เรย์สามารถขยายได้ตลอดเวลา ซึ่งหมายความว่าคุณสามารถเพิ่มองค์ประกอบใหม่ให้กับอาร์เรย์ได้ตลอดเวลาที่เราต้องการ เพื่อสาธิตสิ่งนี้ ให้เรากำหนดอาร์เรย์ของจำนวนเต็มก่อน:
Dim nums() As Integer
เราได้กำหนดอาร์เรย์จำนวนเต็มชื่อ nums ตอนนี้คุณต้องเพิ่มองค์ประกอบสองรายการลงในอาร์เรย์ ในขณะเดียวกันก็ให้พื้นที่สำหรับการปรับขนาด คุณต้องใช้คำสั่ง ReDim ดังนี้:
ReDim nums(1)
nums(0) = 12
nums(1) = 23
ตอนนี้อาร์เรย์ของเรามีสององค์ประกอบในดัชนี 0 และ 1 เราจำเป็นต้องเพิ่มองค์ประกอบที่สามที่ดัชนี 3 ในขณะที่ยังคงรักษาสององค์ประกอบที่มีอยู่แล้ว เราสามารถทำได้ดังนี้:
ReDim Preserve nums(2) nums(2) = 35
ตอนนี้อาร์เรย์มีสามองค์ประกอบ
หลังจากที่เติมข้อมูลลงในอาร์เรย์แล้ว ขั้นตอนต่อไปคือการอ่านค่าที่อยู่ในอาร์เรย์นั้นกลับมา
การดึงเนื้อหาของอาร์เรย์
การดึงข้อมูลหมายถึงการเข้าถึงองค์ประกอบอาร์เรย์ ในการเข้าถึงองค์ประกอบอาร์เรย์เราใช้ดัชนีของมัน ให้เราสาธิตสิ่งนี้โดยใช้ตัวอย่าง
ขั้นตอนที่ 1) เริ่มต้นด้วยการสร้างแอปพลิเคชันคอนโซลใหม่
ขั้นตอนที่ 2) เพิ่มโค้ดต่อไปนี้ลงในแอปพลิเคชัน:
Module Module1 Sub Main() Dim students(0 to 2) As String students(0) = "John" students(1) = "Alice" students(2) = "Antony" Console.WriteLine("First student is {0} ", students(0)) Console.WriteLine("Second student is {0} ", students(1)) Console.WriteLine("Third student is {0} ", students(2)) Console.ReadKey() End Sub End Module
ขั้นตอนที่ 3) เรียกใช้โค้ดโดยคลิกปุ่ม Start จากแถบเครื่องมือ คุณจะเห็นหน้าต่างดังต่อไปนี้:
เราได้ใช้โค้ดดังต่อไปนี้:
คำอธิบายของ Code:
- การสร้างโมดูลชื่อ Module1
- การสร้างขั้นตอนย่อยหลัก
- การสร้างอาร์เรย์ชื่อนักเรียนเพื่อจัดเก็บองค์ประกอบสตริง อาร์เรย์จะเก็บองค์ประกอบตั้งแต่ดัชนี 0 ถึงดัชนี 2 ซึ่งหมายความว่าจะมีทั้งหมด 3 องค์ประกอบ
- การเพิ่มชื่อ John เป็นองค์ประกอบแรกของอาร์เรย์ นั่นคือ John เก็บไว้ที่ดัชนี 0
- การเพิ่มชื่อ Alice เป็นองค์ประกอบที่สองของอาร์เรย์ นั่นคือ Alice เก็บไว้ที่ดัชนี 1
- การเพิ่มชื่อ Antony เป็นองค์ประกอบที่สามของอาร์เรย์ นั่นคือ Antony เก็บไว้ที่ดัชนี 2
- การพิมพ์ข้อความและองค์ประกอบบางส่วนที่เก็บไว้ที่ดัชนี 0 ของนักเรียนอาร์เรย์บนคอนโซล นักเรียน (0) ช่วยให้เราเข้าถึงองค์ประกอบที่ดัชนี 0 ของอาร์เรย์ชื่อนักเรียน
- การพิมพ์ข้อความและองค์ประกอบบางส่วนที่เก็บไว้ที่ดัชนี 1 ของนักเรียนอาร์เรย์บนคอนโซล นักเรียน (1) ช่วยให้เราเข้าถึงองค์ประกอบที่ดัชนี 1 ของอาร์เรย์ชื่อนักเรียน
- การพิมพ์ข้อความและองค์ประกอบบางส่วนที่เก็บไว้ที่ดัชนี 2 ของนักเรียนอาร์เรย์บนคอนโซล นักเรียน (2) ช่วยให้เราเข้าถึงองค์ประกอบที่ดัชนี 2 ของอาร์เรย์ชื่อนักเรียน
- การหยุดหน้าต่างคอนโซลชั่วคราวเพื่อรอให้ผู้ใช้ดำเนินการเพื่อปิด
- สิ้นสุดขั้นตอนย่อย
- จุดสิ้นสุดของโมดูล
การเพิ่มองค์ประกอบใหม่ให้กับอาร์เรย์
สิ่งนี้จะเกิดขึ้นก็ต่อเมื่อคุณมีอาร์เรย์แบบไดนามิก หากคุณประกาศอาร์เรย์ที่มีมิติขนาดคงที่และมีองค์ประกอบอาร์เรย์เต็มไปหมด คุณจะไม่สามารถเพิ่มองค์ประกอบใหม่เข้าไปได้ ตัวอย่างต่อไปนี้จะสาธิตวิธีการเพิ่มองค์ประกอบใหม่เข้าไปในอาร์เรย์แบบไดนามิก:
ขั้นตอนที่ 1) เริ่มต้นด้วยการสร้างแอปพลิเคชันคอนโซลใหม่
ขั้นตอนที่ 2) เพิ่มโค้ดต่อไปนี้ลงในแอปพลิเคชัน:
Module Module1 Sub Main() Dim nums() As Integer ReDim nums(1) nums(0) = 12 nums(1) = 23 For x = 0 To nums.Length - 1 Console.WriteLine("Initial array element: {0}", nums(x)) Next ReDim Preserve nums(2) nums(2) = 35 For x = 0 To nums.Length - 1 Console.WriteLine("Final array element: {0}", nums(x)) Next Console.ReadKey() End Sub End Module
ขั้นตอนที่ 3) คลิกปุ่ม Start จากแถบเครื่องมือเพื่อเรียกใช้โค้ด คุณควรจะเห็นหน้าต่างดังต่อไปนี้:
เราได้ใช้โค้ดดังต่อไปนี้:
คำอธิบายของ Code:
- การสร้างโมดูลชื่อ Module1
- การสร้างขั้นตอนย่อยหลัก
- การสร้างอาร์เรย์ชื่อ nums เพื่อเก็บค่าจำนวนเต็ม
- การระบุว่าอาร์เรย์ด้านบนจะจัดเก็บสององค์ประกอบ นั่นคือที่ดัชนี 0 และ 1 ในขณะที่ยอมให้มีช่องว่างสำหรับการปรับขนาด
- การเพิ่มองค์ประกอบ 12 ให้กับดัชนี 0 ของหมายเลขอาร์เรย์
- การเพิ่มองค์ประกอบ 23 ให้กับดัชนี 1 ของหมายเลขอาร์เรย์
- การใช้ for loop เพื่อสร้างตัวแปร x เพื่อช่วยเราวนซ้ำตั้งแต่องค์ประกอบแรกจนถึงองค์ประกอบสุดท้ายของหมายเลขอาร์เรย์ โปรดทราบว่าตอนนี้อาร์เรย์มีสององค์ประกอบคือ 12 และ 23
- การพิมพ์ข้อความและองค์ประกอบของอาร์เรย์บนคอนโซล
- สิ้นสุดลูป for และกระโดดping ไปยังส่วนถัดไปของโค้ด
- ปรับขนาดหมายเลขอาร์เรย์เพื่อให้องค์ประกอบอยู่ที่ดัชนี 0 ถึง 2 ตอนนี้จะสามารถจัดเก็บ 3 องค์ประกอบแทนที่จะเป็น 2 คำสำคัญ Preserve ช่วยให้เรารักษาองค์ประกอบปัจจุบันของอาร์เรย์ ซึ่งก็คือ 12 และ 23
- การเพิ่มองค์ประกอบ 35 ให้กับดัชนี 2 ของอาร์เรย์ ตอนนี้อาร์เรย์มีสามองค์ประกอบคือ 12, 23 และ 35
- การใช้ for loop เพื่อสร้างตัวแปร x เพื่อช่วยเราวนซ้ำตั้งแต่องค์ประกอบแรกจนถึงองค์ประกอบสุดท้ายของหมายเลขอาร์เรย์ โปรดทราบว่าตอนนี้อาร์เรย์มีสามองค์ประกอบคือ 12, 23 และ 35
- การพิมพ์ข้อความและองค์ประกอบของอาร์เรย์บนคอนโซล
- สิ้นสุดลูป for และกระโดดping ไปยังส่วนถัดไปของโค้ด
- หยุดหน้าต่างคอนโซลชั่วคราวเพื่อรอให้ผู้ใช้ดำเนินการเพื่อปิด
- สิ้นสุดขั้นตอนย่อย
- จุดสิ้นสุดของโมดูล
การลบอาร์เรย์
ขอแนะนำให้คุณลบอาร์เรย์ของคุณหลังจากดำเนินการเสร็จแล้ว ส่วนใหญ่เมื่อคุณกำลังจัดการกับอาร์เรย์แบบไดนามิก วิธีนี้จะช่วยให้คุณเพิ่มพื้นที่หน่วยความจำบางส่วนได้
หากต้องการลบอาร์เรย์ คุณเพียงแค่ต้องเรียกคำสั่ง Erase ตามด้วยชื่อของอาร์เรย์ ตัวอย่างเช่น:
Dim nums(1) As Integer nums(0) = 12 nums(1) = 23 Erase nums
เราได้ประกาศอาร์เรย์ของจำนวนเต็มชื่อ nums และเพิ่มองค์ประกอบสองรายการลงไป คำสั่ง Erase nums จะลบอาร์เรย์
นอกเหนือจากการจัดเก็บค่าแล้ว VB.Net ยังมีฟังก์ชันในตัวที่ใช้แปลงระหว่างสตริงและอาร์เรย์ ฟังก์ชันแรกคือฟังก์ชัน Split
ฟังก์ชั่นแยก
ฟังก์ชัน `split` ที่มีอยู่ใน Visual Basic .NET ช่วยให้เราแยกสตริงออกเป็นส่วนๆ และเก็บไว้ในอาร์เรย์ ตัวอย่างต่อไปนี้แสดงวิธีการใช้ฟังก์ชันนี้:
ขั้นตอนที่ 1) สร้างแอปพลิเคชันคอนโซลใหม่
ขั้นตอนที่ 2) เพิ่มโค้ดต่อไปนี้ลงในแอปพลิเคชัน:
Module Module1 Sub Main() Dim myarray() As String Dim guru99 As String Dim x As Integer guru99 = "Welcome, to, Guru99" myarray = Split(guru99, ", ") For x = LBound(myarray) To UBound(myarray) Console.WriteLine(myarray(x)) Next Console.ReadKey() End Sub End Module
ขั้นตอนที่ 3) เรียกใช้โค้ดโดยคลิกปุ่ม Start จากแถบเครื่องมือ คุณควรจะเห็นหน้าต่างดังต่อไปนี้:
เราได้ใช้โค้ดดังต่อไปนี้:
คำอธิบายของ Code:
- การสร้างโมดูลชื่อ Module1
- เริ่มขั้นตอนย่อยหลัก
- การสร้างอาร์เรย์ชื่อ myarray เพื่อเก็บค่าสตริง
- การสร้างตัวแปรสตริงชื่อ guru99
- การสร้างตัวแปรจำนวนเต็มชื่อ x
- การกำหนดสตริงให้กับตัวแปร guru99
- แยก String ด้านบนออกเป็นส่วนๆ แล้ววางลงในอาร์เรย์ชื่อ myarray เครื่องหมาย “,” (จุลภาค) เป็นตัวคั่น ดังนั้นฟังก์ชันแยกจะใช้เพื่อทำเครื่องหมายจุดสิ้นสุดของส่วนต่างๆ ของสตริง
- การใช้ตัวแปร x เพื่อวนซ้ำผ่านอาร์เรย์ชื่อ myarray LBound และ UBound ระบุขอบเขตล่างและขอบเขตบนของอาร์เรย์ตามลำดับ
- การพิมพ์ค่าของอาร์เรย์ชื่อ myarray บนคอนโซล
- สิ้นสุดลูป for แล้ว
ฟังก์ชั่นเข้าร่วม
ฟังก์ชัน join ช่วยให้เรารวมอาร์เรย์หลายรายการเข้าเป็นสตริงเดียว ตัวอย่างต่อไปนี้จะแสดงให้เห็น:
ขั้นตอนที่ 1) เริ่มต้นด้วยการสร้างแอปพลิเคชันคอนโซลใหม่
ขั้นตอนที่ 2) เพิ่มโค้ดต่อไปนี้ลงในแอปพลิเคชัน:
Module Module1 Sub Main() Dim students(0 To 2) As String students(0) = "John" students(1) = "Alice" students(2) = "Antony" Dim classmates As String classmates = Join(students, ", ") Console.WriteLine(classmates) Console.ReadKey() End Sub End Module
ขั้นตอนที่ 3) เรียกใช้โค้ดโดยคลิกปุ่ม Start บนแถบเครื่องมือ:
เราได้ใช้โค้ดดังต่อไปนี้:
คำอธิบายของ Code:
- การสร้างโมดูลชื่อ Module1
- การสร้างขั้นตอนย่อยหลัก
- การสร้างอาร์เรย์ชื่อนักเรียนเพื่อเก็บค่าสตริง 3 ค่า
- การเพิ่มชื่อ John ให้กับดัชนี 0 ของอาร์เรย์
- การเพิ่มชื่ออลิซในดัชนี 1 ของอาร์เรย์
- การเพิ่มชื่อ Antony ให้กับดัชนี 2 ของอาร์เรย์
- การกำหนดตัวแปรชื่อเพื่อนร่วมชั้นของชนิดข้อมูลสตริง
- นำองค์ประกอบทั้งหมดในอาร์เรย์ students มาผสานรวมกันและคั่นด้วยเครื่องหมายจุลภาค (,) ผลลัพธ์ของการดำเนินการนี้จะถูกกำหนดให้กับตัวแปร classmates
- การพิมพ์เนื้อหาของตัวแปรเพื่อนร่วมชั้นบนคอนโซล
- การหยุดหน้าต่างคอนโซลชั่วคราวเพื่อรอให้ผู้ใช้ดำเนินการเพื่อปิด
- สิ้นสุดขั้นตอนย่อยหลัก
- การสิ้นสุดโมดูล








