0Pricing
Swift Academy · บทเรียน

รูปแบบการวนซ้ำและความสามารถในการเปลี่ยนแปลง

เรียนรู้รูปแบบการวนซ้ำทั่วไปบนอาร์เรย์/พจนานุกรม/เซต ใช้ดัชนีและ enumerated() และทำความเข้าใจความสามารถในการเปลี่ยนแปลงด้วย let กับ var (พื้นฐานการคัดลอกเมื่อเขียน)

รูปแบบการวนซ้ำและความสามารถในการเปลี่ยนแปลง เป็นบทเรียน Swift Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 3 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Swift Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Swift Academy มีบทเรียนทั้งหมด 3 บทเรียน

ทำไมต้องวนซ้ำและเปลี่ยนแปลงค่าได้

เป้าหมาย: วนซ้ำผ่านคอลเลกชันอย่างปลอดภัยและชัดเจน พร้อมรู้ว่าเมื่อใดคอลเลกชันเปลี่ยนแปลงค่าได้ เราจะครอบคลุมอาร์เรย์ พจนานุกรม เซต ดัชนี และ enumerated() รวมถึง let เทียบกับ var

วนซ้ำด้วยอาร์เรย์

การวนซ้ำจะเข้าถึงสมาชิกโดยตรง เหมาะสำหรับอาร์เรย์เพราะเรียบง่ายและชัดเจน

let nums = [10, 20, 30]
for n in nums {
    print("value:", n)
}

enumerated()

ใช้ enumerated() เพื่อรับคู่ (ดัชนี, ค่า) ระหว่างการวนซ้ำ

let letters = ["a","b","c"]
for (i, ch) in letters.enumerated() {
    print(i, ch)   // 0 a, 1 b, 2 c
}

พจนานุกรมและเซต

พจนานุกรมให้คู่ (คีย์, ค่า) เซตไม่มีลำดับ จึงใช้ sorted() เพื่อให้ผลลัพธ์มีลำดับคงที่

let ages = ["Ada": 20, "Bob": 25]
for (name, age) in ages {
    print(name, age)
}

let colors: Set<String> = ["red", "green", "blue"]
for c in colors.sorted() {       // sort for stable order
    print(c)
}

ดัชนีและส่วนย่อย

ใช้ startIndex, endIndex และ index(after:) เพื่อเข้าถึงข้อมูลด้วยดัชนี ส่วนย่อยเป็นมุมมองแบบ ArraySlice

let arr = [5,6,7,8]
var i = arr.startIndex
while i < arr.endIndex {
    print("arr[", i, "] =", arr[i])
    i = arr.index(after: i)
}
let slice = arr[1...2]      // ArraySlice
print("slice", slice)

การเปลี่ยนแปลงค่าและ COW

การเปลี่ยนแปลงค่าได้: ประกาศด้วย var เพื่อแก้ไขค่า คอลเลกชันใช้การคัดลอกเมื่อเขียน จึงคัดลอกได้โดยมีต้นทุนต่ำจนกว่าจะมีการเปลี่ยนแปลง

let fixed = [1,2,3]
// fixed.append(4) // error: cannot use mutating member on immutable value

var bag = [1,2,3]
bag.append(4)           // ok
var bagCopy = bag       // COW: cheap copy until either changes
bagCopy[0] = 9
print("bag", bag, "copy", bagCopy)

กฎการเปลี่ยนแปลงค่า

ตรวจสอบอย่างรวดเร็ว: การประกาศแบบใดทำให้คุณแก้ไขคอลเลกชันได้

สรุปทบทวน

สรุปทบทวน: ควรใช้การวนซ้ำตามสมาชิกด้วย for-in ใช้ enumerated() สำหรับดัชนีและค่า เรียงลำดับเซตเมื่อต้องการลำดับ และเข้าถึงข้อมูลด้วย ดัชนีของสตริง/อาร์เรย์ โดยเปลี่ยนค่าได้เฉพาะเมื่อใช้ var และคำนึงถึง COW

คำถามที่พบบ่อย

บทเรียน “รูปแบบการวนซ้ำและความสามารถในการเปลี่ยนแปลง” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “รูปแบบการวนซ้ำและความสามารถในการเปลี่ยนแปลง” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Swift Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Swift Academy มีบทเรียนทั้งหมด 3 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “รูปแบบการวนซ้ำและความสามารถในการเปลี่ยนแปลง”

เรียนรู้รูปแบบการวนซ้ำทั่วไปบนอาร์เรย์/พจนานุกรม/เซต ใช้ดัชนีและ enumerated() และทำความเข้าใจความสามารถในการเปลี่ยนแปลงด้วย let กับ var (พื้นฐานการคัดลอกเมื่อเขียน) คุณปฏิบัติ Swift Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Swift Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Swift Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 3 บทเรียน

บทเรียน “รูปแบบการวนซ้ำและความสามารถในการเปลี่ยนแปลง” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Swift Academy นี้ได้ไหม

ได้ บทเรียน Swift Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. อาร์เรย์ พจนานุกรม และเซต
  2. เซต — การตรวจสมาชิกและการดำเนินการ
  3. รูปแบบการวนซ้ำและความสามารถในการเปลี่ยนแปลง
← กลับไปที่ Swift Academy