Dart Academy · บทเรียน

ประกาศและใช้ enum แบบพื้นฐาน

แทนชุดค่าที่กำหนดตายตัว

บทเรียน 1 จาก 413 ขั้นตอน

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

ชุดตัวเลือกที่ตายตัว

ค่าบางอย่างมาจากรายการสั้น ๆ ที่ทราบแน่นอนเท่านั้น เช่น วันในสัปดาห์ ชนิดแจกแจงใช้ตั้งชื่อชุดตัวเลือกที่ตายตัวนี้ให้คุณ

การประกาศชนิดแจกแจง

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

enum Direction { north, south, east, west }

เหตุใดไม่ใช้สตริงธรรมดา

ข้อความธรรมดาอย่าง "north" อาจสะกดผิดได้ และ Dart จะไม่เตือนคุณ ชนิดแจกแจงทำให้การสะกดผิดเป็นไปไม่ได้ด้วยการจำกัดค่าไว้

การอ่านค่าชนิดแจกแจง

เข้าถึงสมาชิกด้วยชื่อชนิดแจกแจง ตามด้วยจุด แล้วจึงตามด้วยค่า ผลลัพธ์เป็นค่าที่มีชนิดจริง ไม่ใช่เพียงป้ายชื่อ

var heading = Direction.north;

ชนิดแจกแจงมีชนิดของตนเอง

ตัวแปร heading ด้านบนมีชนิดเป็น Direction Dart จะปฏิเสธค่าทุกค่าที่ไม่ใช่หนึ่งในสมาชิกทั้งสี่

Direction d = Direction.east;

การเปรียบเทียบค่าชนิดแจกแจง

คุณเปรียบเทียบสมาชิกของชนิดแจกแจงด้วยตัวดำเนินการเท่ากันตามปกติ ผลจะเป็นจริงเมื่อทั้งสองฝั่งเป็นสมาชิกเดียวกันอย่างแน่นอนเท่านั้น

print(Direction.north == Direction.north); // true

ชนิดแจกแจงในเงื่อนไข

เนื่องจากเปรียบเทียบได้อย่างชัดเจน ชนิดแจกแจงจึงอ่านได้เป็นธรรมชาติเมื่ออยู่ในเงื่อนไข if เจตนาของโค้ดจะเห็นได้ชัดสำหรับทุกคนที่กวาดตาดูโค้ด

if (d == Direction.east) print("Turning east");

การพิมพ์ค่าชนิดแจกแจง

การพิมพ์สมาชิกจะแสดงชนิดและค่าร่วมกัน เช่น Direction.north เป็นป้ายชื่อที่อ่านง่ายและมีประโยชน์ขณะตรวจแก้ข้อผิดพลาด 🧭

print(Direction.north); // Direction.north

ตัวอย่างจากโลกจริง

ชนิดแจกแจงเหมาะอย่างยิ่งกับสถานะ เช่น คำสั่งซื้ออาจอยู่ระหว่างรอดำเนินการ จัดส่งแล้ว หรือส่งมอบแล้ว ชนิดนี้ทำให้ทุกสถานะที่เป็นไปได้ปรากฏอย่างชัดเจน

enum Status { pending, shipped, delivered }

ข้อตกลง: สมาชิกใช้รูปแบบ lowerCamelCase

ตามรูปแบบการเขียนของ Dart สมาชิกชนิดแจกแจงใช้รูปแบบ lowerCamelCase เช่น inProgress ทำให้ชนิดแจกแจงของคุณสอดคล้องกับระบบนิเวศโดยรวม

enum Phase { notStarted, inProgress, done }

เมื่อใดควรใช้ชนิดแจกแจง

เลือกใช้ชนิดแจกแจงเมื่อค่าหนึ่งเป็นสมาชิกของกลุ่มเล็ก ๆ ที่ตายตัว ชัดเจนและปลอดภัยกว่าการใช้สตริงหรือตัวเลขที่ไม่จำกัด

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

เหตุใดจึงควรเลือกใช้ชนิดแจกแจงแทน String ธรรมดาสำหรับค่าสถานะ

สรุปทบทวน: ชนิดแจกแจงพื้นฐาน

คุณได้เรียนรู้ว่าชนิดแจกแจงใช้ตั้งชื่อชุดตัวเลือกที่มีชนิดตายตัว อ่านค่าด้วยรูปแบบจุด และเปรียบเทียบด้วยความเท่ากัน ทั้งยังดีกว่าสตริงที่ไม่จำกัด 🎉

เริ่มต้นได้ฟรี

เรียนรู้ Dart ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
30
บทเรียน
120

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

บทเรียน “ประกาศและใช้ enum แบบพื้นฐาน” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “ประกาศและใช้ enum แบบพื้นฐาน”

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

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

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

บทเรียน “ประกาศและใช้ enum แบบพื้นฐาน” ใช้เวลานานแค่ไหน

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

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

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

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

  1. ประกาศและใช้ enum แบบพื้นฐาน
  2. ค่า enum, index และ name
  3. enum ที่เพิ่มเติมด้วยฟิลด์และเมธอด
  4. ใช้ switch กับ enum ให้ครบทุกกรณี
← กลับไปที่ Dart Academy