Swift

Swift: การสร้าง Extension method ให้กับ Array แบบต่างๆ

เรื่องที่เกี่ยวข้อง - Array, Method Channel, Swift

อย่างที่บอกว่าช่วงนี้มีการใช้งาน Flutter เป็นตัวหลัก และมีการเรียกใช้คำสั่งของจากฝั่ง iOS ด้วยภาษา Swift ค่อนข้างเยอะ ทำให้มีเทคนิคจากการทำงานมาแชร์กันครับ

โดยวันนี้คือการทำ Extension Method ให้กับ Array class โดยกำหนด generic type เป็น Dictionary นั่นเอง

เช่นถ้าเราจะสร้าง Extension method ให้กับ Array class ตรงๆ ก็สามารถกำหนดได้แบบนี้

extension Array {
    func hello() -> String  {
        return "Hello"
    }
}

แต่ถ้าเราต้องการสร้าง Extension method ให้กับ Array class แบบกำหนด generic type เป็น Dictionary ก็จะเป็นแบบนี้

extension Array where Iterator.Element == Dictionary {
    func hello() -> String  {
        return "Hello"
    }
}

หรือถ้าต้องการกำหนด Generic Type ของ Dictionary เช่นกำหนด key เป็น String และ value เป็น Any ด้วย ก็จะเป็นแบบนี้แทน

extension Array where Iterator.Element == Dictionary<String,Any> {
    func hello() -> String  {
        return "Hello"
    }
}

อ้างอิง – Stackoverflow

เริ่มต้นเรียนรู้สร้างแอพ iOS และ Android ด้วย Google Flutter ไปกับโค้ชพล

เหมาะสำหรับผู้เริ่มต้น

เขียนครั้งเดียว ใช้ได้ทั้งระบบ iOS และ Android ประหยัดเวลา

เรียนได้ทุกเวลา ไม่มีวันหมดอายุ

ได้รู้ตั้งแต่วิธีติดตั้งโปรแกรม จนเอาขึ้นApp Store และ Play Store

ได้ทำแอพของจริง เริ่มต้นจาก 0 ทุกโปรเจค มีระบบถามตอบ กรณีติดปัญหา

 

เริ่มต้นยุค AI ด้วยคอร์สฟรี และพรีเมี่ยม กับพล

หากชอบสิ่งที่พลเล่า เรื่องที่พลสอน สามารถสนับสนุนพลโดยการเข้าเรียนคอร์สออนไลน์ของพลนะคร้าบ

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

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

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

Allow All
Manage Consent Preferences
  • Always Active

Save