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
\\
\ อักขระ
\'
‘ อักขระ
\?
?อักขระ
\"
"อักขระ
\b
ช่องว่าง
\a
จะแสดงเป็นเสียงแจ้งเตือนเมื่อมีการเรียกใช้ (ถ้าระบบรับรอง)
\f
ให้เนื้อหาถูกแบ่งไปยังหน้าต่อไป โดยการพิมพ์เอกสารหรือแสดงผล
\v
เลื่อนตำแหน่งการแสดงผลในแนวตั้ง คล้ายปุ่ม Tab แต่แสดงผลในแนวตั้ง
\xhh...
ใช้แทนค่าตัวเลขฐานสิบหกหนึ่งหรือมากกว่าหนึ่งหลัก
แทนอักขระ 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
Refference
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
Last updated