Constants or Literals
รุ่งไพลิน สุดเปรื่องปราชญ์ 650710093
Constants หรือ Literals คือ ค่าคงที่ เมื่อประกาศตัวแปรต้องแล้วจะต้องกำหนดค่าทันที ไม่ว่าจะเป็น จำนวนเต็ม, ทศนิยม, อักขระ, สตริง, null, บลูลีน โดยกำหนดค่าให้ตัวแปรไม่สามารถเปลี่ยนแปลงระหว่าง runtime
ตัวอย่างโค้ด
int a = 100;
double b = 3.14145;
char c = 'c';
string d = "Hello";
bool e = true;
ประเภทของ Literals
Integer Literals คือ ค่าคงที่จำนวนเต็ม โดยสามารถเป็นค่าคงที่ในระบบฐานต่าง ๆ โดยไม่ต้องใส่ Prefix นำหน้าเลขทศนิยม และมีการใส่ Suffix สำหรับระบุประเภทค่าคงที่เพิ่มเติม ช่วยให้โปรแกรมเข้าใจค่าที่ตามมาเป็นค่าประเภทใด
Prefix คือ ตัวอักษรที่อยู่หน้าค่าของตัวแปร เพื่อระบุประเภทหรือความหมายของค่า Suffix คือ ตัวอักษรที่อยู่ท้ายค่าของตัวแปร เพื่อระบุประเภทของข้อมูลหรือความหมาย
int a = 101; // เลขทศนิยม
int b = 0xFace; // เลขฐานสิบหก
int c = 0b101; // เลขฐานสอง
Floating-point Literals คือ ค่าที่มีส่วนทศนิยม สามารถใช้รูปแบบทศนิยมปกติหรือแบบยกกำลังทศนิยมสูงๆ โดยค่าทศนิยมจะใช้ตัวแปร double สามารถใช้ suffix f หรือ F เพื่อระบุว่าเป็น float
double d1 = 3.1415;
float f1 = 3.14F;
Character Literals คือ ค่าที่เป็นอักขระ แบ่งได้ 3 ประเภท
Single quote หรือ อัญประกาศเดี่ยว ('') เราสามารถกำหนดตัวอักษรลิตเตอรัลให้กับชนิดข้อมูล char โดยใช้อักขระเพียงตัวเดียวภายในเครื่องหมายอัญประกาศเดี่ยว
Unicode Representation กำหนดลิตเตอรัลของ char ในรูปแบบ Unicode โดยใช้ ‘\uxxxx’ ซึ่ง xxxx แทนตัวเลขฐานสิบหก 4 หลัก
Escape Sequence ตัวอักษรพิเศษที่จะแสดงใน character
จะแสดงเป็นเสียงแจ้งเตือนเมื่อมีการเรียกใช้ (ถ้าระบบรับรอง)
ให้เนื้อหาถูกแบ่งไปยังหน้าต่อไป โดยการพิมพ์เอกสารหรือแสดงผล
เลื่อนตำแหน่งการแสดงผลในแนวตั้ง คล้ายปุ่ม Tab แต่แสดงผลในแนวตั้ง
ใช้แทนค่าตัวเลขฐานสิบหกหนึ่งหรือมากกว่าหนึ่งหลัก
แทนอักขระ ASCII หรือ Unicode
String Literals คือ ค่าที่เป็นสตริง โดยใช้เครื่องหมายอัญประกาศคู่ (" ")
Null Literals คือ ใช้เพื่อกำหนดค่าที่ไม่มีข้อมูลในตัวแปรนั้นๆ
Boolean Literals คือ ค่าจริงหรือเท็จ โดยจะเก็บตัวแปรละ 1 สถานะ true หรือ false
โค้ดการใช้ Literals ผ่านตัวแปรชนิดต่างๆในภาษา Java, C, Python
ความแตกต่างระหว่าง C# Literals กับ Java Literals
Java Literals มีลักษณะคล้ายกับ C# Literals
รองรับฐาน 10, ฐาน 16, และฐาน 2 (0b) เหมือน C# Literals แต่ไม่มี unsigned (ค่าบวกหรือ0เท่านั้น)
ความแตกต่างระหว่าง C# Literals กับ C Literals
ไม่มี suffix แบบ U หรือ L สำหรับชนิดข้อมูล long หรือ unsigned ต้องกำหนดชนิดข้อมูลในตัวแปร
ไม่มีชนิดข้อมูล bool ใช้ 0 หรือ 1 แทนค่าจริงเท็จ
ความแตกต่างระหว่าง C# Literals กับ Python Literals
ไม่มีการใช้ suffix เนื่องจากตัวเลขสามารถเป็นได้ทั้ง int หรือ long โดยอัตโนมัติ
ตัวแปร char ไม่มีโดยเฉพาะใน Python โดยใช้ string ที่มีความยาว 1 ตัวอักษร
รองรับ string หลายบรรทัด """ """
Presentation
Clip Presentation
GeeksforGeeks - Literals in Java: GeeksforGeeks. (n.d.). Literals in Java. GeeksforGeeks. www.geeksforgeeks.org
O'Reilly - C# in a Nutshell (Chapter 3): Albahari, J., & Albahari, B. (20037). C# in a nutshell (3rd ed.). O'Reilly Media. www.oreilly.com
HubSpot Blog - Python Literals: Tennyson, M. (2023, April 18). Python literals. HubSpot. blog.hubspot.com
GeeksforGeeks - Literals in Python: GeeksforGeeks. (n.d.). Literals in Python. GeeksforGeeks. www.geeksforgeeks.org