- อาร์เรย์ (Arrays) ชุด (Sets) และพจนานุกรม (Dictionaries)
- คอลเลกชัน (Collection) และคุณสมบัติ (Properties)
- การวนซ้ำ (Iterating) อาร์เรย์ (Arrays)
- อัลกอริทึมคอลเลกชัน (Collection)
คอลเลกชัน (Collection)ในการทำแอพ iOS Swift เป็นโครงสร้างข้อมูลพื้นฐานที่ช่วยให้คุณจัดเก็บและจัดการกลุ่มของค่าต่างๆ ได้อย่างมีประสิทธิภาพ ในบทความนี้ เราจะสำรวจประเภทคอลเลกชันที่พบบ่อยที่สุดใน iOS Swift รวมถึงอาร์เรย์ ชุด (Sets) และพจนานุกรม (Dictionaries) นอกจากนี้ เราจะหารือเกี่ยวกับวิธีการและคุณสมบัติที่เกี่ยวข้องกับประเภทเหล่านี้ พร้อมด้วยตัวอย่างวิธีการวนซ้ำและจัดการโดยใช้อัลกอริทึมการรวบรวมในตัวสำหรับการรับทำแอพ
1. อาร์เรย์ (Arrays) ชุด (Sets) และพจนานุกรม (Dictionaries)
1.1 อาร์เรย์ (Arrays)
อาร์เรย์ (Arrays) เป็นคอลเลกชัน (Collection) ที่เรียงลำดับขององค์ประกอบ พวกเขาสามารถจัดเก็บองค์ประกอบประเภทเดียวกันโดยอนุญาตให้มีค่าที่ซ้ำกัน อาร์เรย์มีการจัดทำดัชนีเป็นศูนย์ ซึ่งหมายความว่าองค์ประกอบแรกอยู่ที่ดัชนี 0 นี่คือตัวอย่างการสร้างอาร์เรย์ใน Swift:
var numbers: [Int] = [1, 2, 3, 4, 5]
1.2 Sets
Sets เป็น Sets ขององค์ประกอบที่ไม่ซ้ำใคร พวกเขาเก็บองค์ประกอบประเภทเดียวกัน แต่ไม่อนุญาตให้มีค่าที่ซ้ำกัน นี่คือตัวอย่างการสร้าง Sets ใน Swift:
var uniqueNumbers: Set<Int> = [1, 2, 3, 4, 5, 5]
1.3 Dictionaries
Dictionaries คือคอลเลกชันของคู่คีย์-ค่า โดยจะจัดเก็บองค์ประกอบประเภทเดียวกันสำหรับทั้งคีย์และค่า และแต่ละคีย์จะมีค่าที่เกี่ยวข้องได้เพียงค่าเดียวเท่านั้น นี่คือตัวอย่างการสร้าง Dictionaries ใน Swift:
var students: [Int: String] = [1: "Alice", 2: "Bob", 3: "Charlie"]
2. คอลเลกชัน (Collection) และคุณสมบัติ (Properties)
2.1 วิธีการ (Methods) และคุณสมบัติ (Properties) ของอาร์เรย์
วิธีการ (Methods) และคุณสมบัติ (Properties) ของอาเรย์ทั่วไปบางอย่างรวมถึง:
count
: ส่งกลับจำนวนองค์ประกอบในอาร์เรย์isEmpty
: ตรวจสอบว่าอาร์เรย์ว่างหรือไม่append(_:)
: เพิ่มองค์ประกอบใหม่ที่ส่วนท้ายของอาร์เรย์insert(_:at:)
: แทรกองค์ประกอบใหม่ที่ดัชนีที่ระบุremove(at:)
: ลบองค์ประกอบที่ดัชนีที่ระบุindex(of:)
: ส่งกลับดัชนีแรกที่สามารถพบองค์ประกอบที่ระบุหรือไม่มีหากไม่พบ
2.2 วิธีการ (Methods) และคุณสมบัติ (Properties) ของ Sets
เมธอด (Methods) และคุณสมบัติ (Properties) ทั่วไปของ Sets ประกอบด้วย:
- count: ส่งกลับจำนวนองค์ประกอบในชุด
- isEmpty: ตรวจสอบว่าชุดว่างหรือไม่
- insert(🙂: เพิ่มองค์ประกอบใหม่ให้กับชุด remove(:): ลบองค์ประกอบที่ระบุออกจากชุด
- contains(_:): ตรวจสอบว่าชุดมีองค์ประกอบที่ระบุหรือไม่
2.3 วิธีการ (Methods) และคุณสมบัติ (Properties) ของ Dictionaries
เมธอด (Methods) และคุณสมบัติ (Properties) ทั่วไปของ Dictionaries ประกอบด้วย:
- count: ส่งกลับจำนวนคู่ของคีย์-ค่าในพจนานุกรม
- isEmpty: ตรวจสอบว่าพจนานุกรมว่างเปล่าหรือไม่
- updateValue(_:forKey:): อัพเดตค่าสำหรับคีย์ที่ระบุหรือเพิ่มคู่คีย์-ค่าใหม่หากไม่มีคีย์นั้น
- removeValue(forKey:): ลบคู่คีย์-ค่าสำหรับคีย์ที่ระบุ
3. การวนซ้ำ (Iterating) อาร์เรย์ (Arrays)
3.1 การวนซ้ำอาร์เรย์
คุณสามารถใช้for-inการวนซ้ำเพื่อวนซ้ำองค์ประกอบของอาร์เรย์:
for number in numbers {
print(number)
}
3.2 วนซ้ำ Sets
คุณสามารถใช้ for-in การวนซ้ำเพื่อวนซ้ำองค์ประกอบของ Sets:
for uniqueNumber in uniqueNumbers {
print(uniqueNumber)
}
3.3 การวนซ้ำ Dictionaries
คุณสามารถใช้ for-in การวนซ้ำเพื่อวนซ้ำคู่คีย์-ค่าของ Dictionaries ได้:
for (studentId, studentName) in students {
print("Student ID: \(studentId), Name: \(studentName)")
}
4. อัลกอริทึมคอลเลกชัน (Collection)
iOS Swift มีอัลกอริธึมในตัวที่หลากหลายเพื่อดำเนินการกับคอลเลกชันสำหรับการทำแอพ นี่คือตัวอย่างบางส่วน:
4.1 การเรียงลำดับ (Sorting) อาร์เรย์
สามารถใช้ฟังก์ชัน sorted()
เพื่อสร้างอาร์เรย์ใหม่ที่มีองค์ประกอบของอาร์เรย์เดิมตามลำดับการจัดเรียง:
let sortedNumbers = numbers.sorted()
4.2 อาร์เรย์การกรอง (Filtering)
สามารถใช้ filter(_:) ฟังก์ชันเพื่อสร้างอาร์เรย์ใหม่ที่มีเฉพาะองค์ประกอบที่ตรงตามเงื่อนไขที่กำหนด:
let evenNumbers = numbers.filter { $0 % 2 == 0 }
4.3 อาร์เรย์การแมป (Mapping)
คุณสามารถใช้ map(_:) ฟังก์ชันเพื่อสร้างอาร์เรย์ใหม่โดยใช้การแปลงที่กำหนดกับแต่ละองค์ประกอบของอาร์เรย์เดิม:
let squaredNumbers = numbers.map { $0 * $0 }
4.4 การลด (reduce) อาร์เรย์
สามารถใช้ reduce(:🙂 ฟังก์ชันเพื่อรวมองค์ประกอบของอาร์เรย์โดยใช้การดำเนินการที่กำหนด ซึ่งส่งผลให้มีค่าเดียว:
let sum = numbers.reduce(0, +)
4.5 ยูเนี่ยน(union) อินเตอร์เซกชัน (intersection) และผลต่าง (subtracting) ของ Sets
คุณสามารถใช้ union(:), intersection(:), และ subtracting(_:) ฟังก์ชันเพื่อดำเนินการตั้งค่า:
let setA: Set<Int> = [1, 2, 3, 4]
let setB: Set<Int> = [3, 4, 5, 6]
let unionSet = setA.union(setB)
let intersectionSet = setA.intersection(setB)
let differenceSet = setA.subtracting(setB)
เราได้สำรวจพื้นฐานของคอลเลกชัน iOS Swift รวมถึงอาร์เรย์ ชุด (Sets) และพจนานุกรม (Dictionaries) เราได้หารือเกี่ยวกับวิธีการและคุณสมบัติของคอลเล็กชันเหล่านี้สำหรับการทำแอพและสาธิตวิธีการวนซ้ำ นอกจากนี้ เรายังกล่าวถึงอัลกอริทึมการรวบรวมในตัวที่ iOS Swift มีให้อีกด้วย การทำความเข้าใจแนวคิดเหล่านี้จะช่วยให้คุณสามารถจัดเก็บและจัดการข้อมูลในการทำแอพ Swift ของคุณได้อย่างมีประสิทธิภาพ