Dart Academy · บทเรียน

ตัวดำเนินการที่รู้จัก null: ?., ?? และ !

อ่านค่า null และกำหนดค่าเริ่มต้นอย่างปลอดภัย

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

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

การทำงานกับค่าที่อาจเป็นค่าว่าง

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

ตัวดำเนินการเรียกใช้อย่างปลอดภัย

ใช้ ?. เพื่อเรียกสมาชิกเฉพาะเมื่อออบเจ็กต์ไม่เป็นค่าว่าง หากเป็นค่าว่าง นิพจน์ทั้งหมดจะกลายเป็นค่าว่าง

String? name;
int? len = name?.length;

ไม่หยุดทำงานเมื่อเป็นค่าว่าง

เมื่อใช้ ?. ออบเจ็กต์ที่เป็นค่าว่างจะหยุดการประมวลผลต่ออย่างเงียบ ๆ แทนการโยนข้อผิดพลาด โปรแกรมของคุณจึงทำงานต่อได้อย่างราบรื่น

print(name?.toUpperCase());

ตัวดำเนินการเมื่อเป็นค่าว่าง

ตัวดำเนินการ ?? จะจัดหาค่าสำรอง โดยส่งกลับค่าด้านซ้าย หรือค่าด้านขวาเมื่อค่าด้านซ้ายเป็นค่าว่าง

String label = name ?? 'Guest';

เชื่อมตัวดำเนินการทั้งสองเข้าด้วยกัน

นำทั้งสองตัวมาใช้ร่วมกัน โดยอ่านค่าอย่างปลอดภัยด้วย ?. แล้วกำหนดค่าเริ่มต้นด้วย ?? เพื่อให้ได้ค่าที่ใช้งานได้เสมอ

int len = name?.length ?? 0;

กำหนดค่าเมื่อเป็นค่าว่าง

ตัวดำเนินการ ??= จะกำหนดค่าเฉพาะเมื่อตัวแปรเป็นค่าว่างอยู่ในขณะนั้น เหมาะสำหรับการตั้งค่าเริ่มต้นเพียงครั้งเดียว

name ??= 'Anonymous';

ตัวดำเนินการยืนยันค่า

ตัวดำเนินการ ! ยืนยันว่าค่าไม่เป็นค่าว่างในขณะนั้น และเปลี่ยนชนิดข้อมูลที่เป็นค่าว่างได้ให้เป็นชนิดปกติ

int sure = name!.length;

เครื่องหมายยืนยันคือคำมั่น

การใช้ ! หมายความว่าคุณรับผิดชอบต่อการยืนยันนั้น หากค่าเป็นค่าว่างจริง โปรแกรมจะโยนข้อผิดพลาดขณะทำงาน จึงควรใช้อย่างประหยัด

เลือกการตรวจสอบแทนเครื่องหมายยืนยัน

เมื่อไม่แน่ใจ การทดสอบด้วย if อย่างชัดเจนหรือการใช้ค่าเริ่มต้น ?? จะปลอดภัยกว่า ! ใช้เครื่องหมายยืนยันเฉพาะเมื่อมั่นใจเท่านั้น

การอ่านข้อมูลที่ซ้อนกัน

การเรียกใช้อย่างปลอดภัยด้วย ?. สามารถเชื่อมต่อผ่านหลายระดับได้ และจะหยุดที่ค่าว่างตัวแรกโดยไม่เกิดข้อผิดพลาด

var city = user?.address?.city;

เลือกเครื่องมือให้เหมาะสม

ใช้ ?. เพื่ออ่านอย่างปลอดภัย ใช้ ?? เพื่อกำหนดค่าเริ่มต้น และใช้ ! เฉพาะเมื่อพิสูจน์ได้ว่าค่านั้นมีอยู่

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

ตัวดำเนินการใดจัดหาค่าสำรองเมื่อค่าเป็นค่าว่าง

สรุปทบทวน

คุณเชี่ยวชาญเครื่องมือที่ตระหนักถึงค่าว่างแล้ว: ?. ใช้อ่านค่าอย่างปลอดภัย ?? ใช้จัดหาค่าเริ่มต้น และ ! ใช้ยืนยันว่าไม่เป็นค่าว่างเมื่อคุณมั่นใจ 🎯

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

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

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

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

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

บทเรียน “ตัวดำเนินการที่รู้จัก null: ?., ?? และ !” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “ตัวดำเนินการที่รู้จัก null: ?., ?? และ !”

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

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

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

บทเรียน “ตัวดำเนินการที่รู้จัก null: ?., ?? และ !” ใช้เวลานานแค่ไหน

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

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

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

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

  1. ไวยากรณ์ลูกศรสำหรับฟังก์ชันบรรทัดเดียว
  2. ฟังก์ชันนิรนามและคลอเชอร์
  3. ชนิดข้อมูลที่รับค่า null ได้และเครื่องหมายคำถาม
  4. ตัวดำเนินการที่รู้จัก null: ?., ?? และ !
← กลับไปที่ Dart Academy