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

แปลงข้อมูลด้วย map, where และ toList

ปรับรูปทรงลิสต์ด้วยเมธอดสำหรับ iterable

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

ปรับรูปแบบรายการ

แทนที่จะวนลูปด้วยตนเอง Dart ให้คุณแปลงรายการด้วยเมธอดสำหรับข้อมูลที่วนซ้ำได้อย่างเป็นระเบียบ คุณอธิบายผลลัพธ์ แล้ว Dart จะสร้างผลลัพธ์ให้ ✨

map แปลงรายการ

เมธอด map จะเรียกใช้ฟังก์ชันกับทุกรายการ และสร้างลำดับใหม่จากผลลัพธ์ โดยไม่เปลี่ยนแปลงรายการเดิม

var nums = [1, 2, 3];
var doubled = nums.map((n) => n * 2);

map คืนค่า Iterable

โปรดสังเกตว่า map คืนค่าเป็น Iterable ไม่ใช่รายการ การคำนวณจะเกิดขึ้นแบบเลื่อนเวลา ดังนั้นจะยังไม่มีการคำนวณจนกว่าคุณจะอ่านค่า

toList ทำให้เป็นรายการจริง

แปลงข้อมูลที่วนซ้ำได้ให้เป็นรายการจริงด้วย toList วิธีนี้จะบังคับให้การประมวลผลเกิดขึ้น และทำให้คุณได้รายการที่ใช้ดัชนีได้

var result = nums.map((n) => n * 2).toList();

where กรองรายการ

เมธอด where จะเก็บเฉพาะรายการที่ผ่านการทดสอบของคุณ และตัดรายการที่เหลือออก เมธอดนี้คือเครื่องมือหลักสำหรับการกรอง

var evens = nums.where((n) => n.isEven);

เชื่อม map และ where

รวมขั้นตอนต่าง ๆ ได้อย่างต่อเนื่อง โดยให้ where กรองก่อน แล้ว map แปลงข้อมูล ทำให้อ่านได้เหมือนประโยคที่ชัดเจนเกี่ยวกับข้อมูลของคุณ

var out = nums.where((n) => n > 1).map((n) => n * 10);

จบด้วย toList เสมอ

หลังจากเชื่อมขั้นตอนแล้ว ให้เรียกใช้ toList เพื่อบันทึกผลลัพธ์ หากลืมเรียกใช้ คุณจะยังคงได้ข้อมูลที่วนซ้ำแบบเลื่อนเวลา ซึ่งจะคำนวณใหม่ทุกครั้ง

var finalList = out.toList();

ข้อมูลต้นฉบับยังปลอดภัย

เมธอดเหล่านี้ไม่เปลี่ยนแปลงรายการต้นทาง แต่จะคืนข้อมูลชุดใหม่ รายการต้นฉบับของคุณ nums ยังคงเหมือนตอนเริ่มต้นทุกประการ

print(nums); // [1, 2, 3]

เปลี่ยนชนิดข้อมูล

map สามารถเปลี่ยนชนิดข้อมูลได้ทั้งหมด ในที่นี้รายการตัวเลขจะกลายเป็นรายการป้ายกำกับ String ได้ในขั้นตอนเดียวที่กระชับ

var labels = nums.map((n) => 'item $n').toList();

expand เพื่อทำให้แบนราบ

ใช้ expand เมื่อแต่ละรายการเปลี่ยนเป็นหลายรายการ เมธอดนี้จะแปลงแล้วรวมส่วนต่าง ๆ ให้เป็นลำดับเดียวที่ต่อเนื่อง

var pairs = nums.expand((n) => [n, n]).toList();

การแปลงอย่างรวดเร็ว

เครื่องมือปิดท้ายที่มีประโยชน์อื่น ๆ ได้แก่ join ซึ่งใช้เชื่อมรายการให้เป็นข้อความเดียว เหมาะสำหรับแสดงรายการให้ผู้ใช้เห็น

print(nums.join(', ')); // 1, 2, 3

ตรวจสอบอย่างรวดเร็ว

คุณใช้ map กับรายการต่อเนื่องกัน แต่ไม่เคยเรียกใช้ toList ผลลัพธ์ที่ได้คืออะไร

ทบทวน

ตอนนี้คุณแปลงรายการได้อย่างมืออาชีพแล้ว: ใช้ map เพื่อเปลี่ยนรายการ ใช้ where เพื่อกรอง และใช้ toList เพื่อสรุปผล กระบวนการต่อเนื่องมีประสิทธิภาพกว่าการวนลูปด้วยตนเองเสมอ 🚀

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

บทเรียน “แปลงข้อมูลด้วย map, where และ toList” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “แปลงข้อมูลด้วย map, where และ toList”

ปรับรูปทรงลิสต์ด้วยเมธอดสำหรับ iterable คุณปฏิบัติ Dart Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

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

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

บทเรียน “แปลงข้อมูลด้วย map, where และ toList” ใช้เวลานานแค่ไหน

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

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

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

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

  1. สร้างลิสต์และใช้ดัชนี
  2. เพิ่ม ลบ และอัปเดตรายการ
  3. ค้นหาและเรียงลิสต์
  4. แปลงข้อมูลด้วย map, where และ toList
← กลับไปที่ Dart Academy