Dictionary Swift

สวัสดีครับทุกคนนน วันนี้เรามาทำความรู้จัก Dictionary ในภาษา Swift กันดีกว่า

ก่อนอื่นเลย Dictionary ในภาษา Swift คือ การเก็บค่าหลายๆอย่างไว้ด้วยกันคล้ายๆกันกับ Array แต่การเก็บค่าเป็น Dictionary เรียกการเก็บนี้ว่า Collection โดยจะไม่ใช้ Index แต่จะใช้ Key ในการเรียกใช้ เช่น

เห็นว่า ค่า Key แต่ละอย่างสมารถเก็บเป็นตัวเลข ข้อความ หรือ Object ใดๆ ก็ได้

อ่า เรามาดูการประกาศ Dictionary เบื้องต้นกัน

ก่อนจะประกาศ Dictionary ต้องประกาศ Array ออกมาก่อน ให้มีค่า Type เป็น int และ Value เป็น String จากนั้นใน บรรทัดที่ 2 จึงกำหนดค่าให้กับ Dictionary เป็น Key เช่น ให้ Key 01 เป็น กรุงเทพมหานคร

ต่อไปมาดูการประกาศให้ Type เป็น String และ Value เป็น String กันบ้าง

จะเห็นตอนประกาศเป็น Dictionary ใช้ type และ value เป็น String ทั้งหมดเลย

ต่อไปเรามาดูการ อ้าง Key ใน Dictionary กันดีกว่าาา หรือเรียกว่าการเรียกใช้นั่นเอง

ถ้าเพื่อนๆต้องการทราบค่าต่างๆ ที่อยู่ใน Dictionary ก็ให้อ้างอิงจาก Key คล้ายๆ กับ Array ดังตัวอย่างด้านบน คือจะ print ออกมาเพื่อให้เห็นภาพที่ชัดเจนมากขึ้น คือ เรียกใช้ Subscript Syntax เช่น print(myDictionary[01]!) หมายถึง ค่าของ Dictionary ที่มี key เป็น 01 หมายถึง ค่าใน Dictionary ที่มี key เป็น 01 เป็นต้น

เอ๊ะๆ ! ถ้าเราเรียก Key ที่ไม่ได้กำหนดไว้ค่าจะออกมาเป็นยังไงนะ

ก็ Error หรือ Nil ไงละ 5555

เอ้าๆ อย่าลืมกันนะครับ ถ้าเราประกาศค่าของตัวแปรเป็น Optional แล้ว ตอนเราเรียกใช้เนี่ย อย่าลืมใส่เครื่องหมาย ! ไว้ด้านหลังนะ เพราะ ระบุไว้แล้วว่ามีค่าแน่ๆ ดังตัวอย่างด้านล่างนะครับ

อีกอย่างก็คือ หาก type และ value String การเรียกใช้จะต่างกันนิดหน่อย ตามภาพด้านล่าง

ต่อไปเรามาดูการเพิ่มหรือเปลี่ยนค่าใน Dictionary กันดีกว่า

เนื่องจาก Dictionary ไม่มี Index จึง อ้างอิงจากค่า Key แทน ถ้า Key นั้นมีอยู่แล้ว การเปบี่ยนค่าจะแทนที่ค่าเดิม ดังตัวอย่างด้านล่าง

เรามาต่อด้วยเรื่องสุดท้ายกันเลย คือ การลบ Key และ Value ใน Dictionary

การลบนั้นไม่ได้ยากอย่างที่คิดเลย เราแค่เปลี่ยนค่า Key เป็น nil แค่นั้นเองครับ

เป็นยังไงกันบ้างครับเพื่อนๆ พอจะเข้าใจในเรื่อง Dictionary มากขึ้นไหมครับ อธิบายคร่าวๆคือ Dictionary เนี่ย ภาษาที่พัฒนามาจาก Array อีกทีนึง เพื่อให้ใช้งานในเรียกใช้ได้ง่ายขึ้น เดี๋ยวผมจะมีคลิปอธิบายให้ฟังเพิ่มเติมด้านล่างนี้นะครับ ขอขอบคุณทุกคนที่ให้ความช่วยเหลือนะครับบ

Show your support

Clapping shows how much you appreciated TANATAD NITAYOTAN’s story.