สร้างช่วงค่า
สร้างลำดับตัวเลข
สร้างช่วงค่า เป็นบทเรียน Scala for Backend Engineering & Functional Programming ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Scala for Backend Engineering & Functional Programming และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Scala for Backend Engineering & Functional Programming มีบทเรียนทั้งหมด 4 บทเรียน
ช่วงคืออะไร
ช่วงแสดงลำดับจำนวนเต็มที่เรียงตามลำดับและมีระยะห่างเท่ากัน เช่น 1, 2, 3, 4, 5
ช่วงใช้หน่วยความจำอย่างมีประสิทธิภาพ เพราะเก็บเฉพาะจุดเริ่มต้น จุดสิ้นสุด และระยะก้าว ไม่ได้เก็บทุกตัวเลข เหมาะสำหรับการนับและการวนซ้ำ
คีย์เวิร์ด to
ช่วงแบบง่ายที่สุดใช้ to ซึ่งรวมปลายทั้งสองด้าน
ดังนั้น 1 to 5 ครอบคลุม 1, 2, 3, 4 และ 5 ตัวเลขสุดท้ายเป็นส่วนหนึ่งของช่วง
val r = 1 to 5
println(r)ช่วงแบบรวมขอบเขต
ช่วงที่ใช้ to เรียกว่าแบบรวมขอบเขต เพราะมีค่าขอบเขตบนอยู่ด้วย
หากต้องการดูตัวเลขจริงแทนคำอธิบายแบบย่อ คุณสามารถแปลงช่วงเป็นลิสต์ได้
val r = 1 to 5
println(r.toList)คีย์เวิร์ด until
ใช้ until เมื่อต้องการหยุดก่อนถึงขอบเขตบน
ดังนั้น 1 until 5 จะได้ 1, 2, 3, 4 และไม่รวม 5 ซึ่งเป็นการไม่รวมค่าปลายช่วง
val r = 1 until 5
println(r.toList)to เทียบกับ until
ความแตกต่างมีเพียงตัวเลขสุดท้าย to รวมจุดสิ้นสุด ส่วน until ไม่รวม
1 to 5 มีห้าสมาชิก ขณะที่ 1 until 5 มีสี่สมาชิก การเลือกให้ถูกช่วยหลีกเลี่ยงข้อผิดพลาดจากการนับตำแหน่งคลาดเคลื่อน
println((1 to 5).toList)
println((1 until 5).toList)การกำหนดระยะก้าวด้วย by
โดยค่าเริ่มต้น ช่วงจะเพิ่มทีละหนึ่ง เติม by เพื่อเปลี่ยนขนาดระยะก้าว
ในที่นี้เรานับจาก 0 ถึง 10 โดยกระโดดทีละ 2 จึงได้จำนวนคู่
val evens = 0 to 10 by 2
println(evens.toList)การนับถอยหลัง
ระยะก้าวติดลบทำให้ช่วงนับย้อนกลับได้
เมื่อใช้ by -1 ช่วงจะเริ่มจากค่าสูงแล้วลดลง นี่เป็นวิธีมาตรฐานในการวนซ้ำย้อนกลับ
val down = 5 to 1 by -1
println(down.toList)ขนาดของช่วง
คุณสามารถถามช่วงได้ว่ามีสมาชิกกี่ตัวด้วย size
ค่านี้คำนวณได้ทันทีจากขอบเขตและระยะก้าว โดยไม่ต้องแสดงตัวเลขทุกตัว
val r = 0 to 20 by 5
println(r.size)การตรวจสอบสมาชิก
เมธอด contains จะบอกว่าค่าอยู่ภายในช่วงหรือไม่
เมธอดนี้คำนึงถึงระยะก้าวด้วย ดังนั้น 3 จึงไม่อยู่ในช่วงที่เพิ่มทีละ 2 ซึ่งมีแต่จำนวนคู่
val evens = 0 to 10 by 2
println(evens.contains(4))
println(evens.contains(3))ช่วงคือคอลเลกชัน
ช่วงทำงานเหมือนลำดับอื่น ๆ ดังนั้นคุณจึงใช้ map หรือหาผลรวมกับช่วงได้
ในที่นี้เรายกกำลังสองแต่ละตัวเลขแล้วบวกผลลัพธ์ โดยไม่ต้องสร้างลิสต์อย่างชัดเจนก่อน
val total = (1 to 4).map(n => n * n).sum
println(total)ช่วงว่าง
หากจุดเริ่มต้นอยู่หลังจุดสิ้นสุดแล้ว ช่วงนั้นจะว่างเปล่า
ตัวอย่างเช่น 5 until 5 ไม่มีสมาชิก ช่วงว่างใช้ได้ตามปกติ และจะไม่สร้างสมาชิกเมื่อวนซ้ำ
val r = 5 until 5
println(r.isEmpty)ตรวจสอบอย่างรวดเร็ว
ทดสอบสิ่งที่คุณเรียนรู้เกี่ยวกับการสร้างช่วง
สรุปทบทวน
คุณสร้างช่วงด้วย to (รวมขอบเขต) และ until (ไม่รวมขอบเขต) ปรับระยะก้าวด้วย by และนับถอยหลังด้วยระยะก้าวติดลบ
ช่วงเป็นคอลเลกชันขนาดเล็กที่รองรับ size contains และ map ต่อไปคุณจะใช้ช่วงเพื่อควบคุมลูป
คำถามที่พบบ่อย
บทเรียน “สร้างช่วงค่า” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “สร้างช่วงค่า” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Scala for Backend Engineering & Functional Programming ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Scala for Backend Engineering & Functional Programming มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “สร้างช่วงค่า”
สร้างลำดับตัวเลข คุณปฏิบัติ Scala for Backend Engineering & Functional Programming ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Scala for Backend Engineering & Functional Programming หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Scala for Backend Engineering & Functional Programming บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน
บทเรียน “สร้างช่วงค่า” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Scala for Backend Engineering & Functional Programming นี้ได้ไหม
ได้ บทเรียน Scala for Backend Engineering & Functional Programming ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- สร้างทูเพิล
- แยกส่วนทูเพิล
- สร้างช่วงค่า
- ช่วงค่าในลูป