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

การอนุมานจากค่าคงที่

ควบคุมว่าค่าคงที่จะกลายเป็น Int หรือ Double

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

ชนิด default ของค่าลิเทอรัล

ค่าลิเทอรัลแต่ละชนิดมีชนิดที่อนุมานเป็นค่า default ได้แก่ จำนวนเต็มเป็น Int จำนวนทศนิยมเป็น Double ข้อความเป็น String และค่าจริงหรือเท็จเป็น Bool

let i = 5
let d = 5.0
let s = "5"
let b = true
print(type(of: i), type(of: d), type(of: s), type(of: b))

let x = 5 เป็น Int

ค่าลิเทอรัลจำนวนเต็มที่ไม่มีจุดทศนิยมจะอนุมานเป็น Int เสมอ ซึ่งเป็นชนิดจำนวนเต็ม default ของแพลตฟอร์ม

let x = 5
print(type(of: x))
print(x + 1)

let y: Double = 5

การระบุชนิดด้วย Double ทำให้ค่าลิเทอรัล 5 เดียวกันกลายเป็นค่าทศนิยม

let y: Double = 5
print(type(of: y))
print(y / 2)

จุดทศนิยมบังคับให้เป็น Double

การเขียน 5.0 จะอนุมานเป็น Double โดยไม่ต้องระบุชนิด

let z = 5.0
print(type(of: z))
print(z * 2)

Int และ Double ใช้ร่วมกันไม่ได้

Swift จะไม่แปลงชนิดตัวเลขโดยปริยาย คุณต้องแปลงอย่างชัดเจนเมื่อต้องการใช้ Int และ Double ร่วมกัน

let count = 3
let price = 1.5
let total = Double(count) * price
print(total)

Float เทียบกับ Double

ค่าทศนิยมจะใช้ Double เป็นค่า default ให้ระบุชนิดด้วย Float เมื่อคุณต้องการชนิดขนาด 32 บิตที่เล็กกว่าโดยเฉพาะ

let big = 3.14
let small: Float = 3.14
print(type(of: big), type(of: small))

การระบุชนิดจำนวนเต็ม

ระบุชนิดเพื่อเลือกจำนวนเต็มตามขนาด เช่น Int8 หรือ UInt แทน Int ซึ่งเป็นค่า default

let tiny: Int8 = 120
let unsigned: UInt = 9
print(type(of: tiny), type(of: unsigned))

String เทียบกับ Character

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

let word = "Swift"
let letter: Character = "S"
print(type(of: word), type(of: letter))

ค่าลิเทอรัลแบบบูลีน

คีย์เวิร์ด true และ false จะอนุมานเป็น Bool

let isReady = false
print(type(of: isReady))

ค่าลิเทอรัลในนิพจน์

เมื่อค่าลิเทอรัลหลายชนิดอยู่ในนิพจน์เดียวกัน Swift จะเลือกชนิดร่วม 1 + 2.0 จึงถือว่าค่าลิเทอรัลจำนวนเต็มเป็น Double

let mixed = 1 + 2.0
print(mixed)
print(type(of: mixed))

การระบุชนิดจะปรับค่าลิเทอรัล

ตัวค่าลิเทอรัลเองมีความยืดหยุ่น ส่วนการระบุชนิดจะเป็นตัวตัดสินชนิดสุดท้าย นี่คือเหตุผลที่ let y: Double = 5 ใช้งานได้โดยไม่ต้องเขียน 5.0

let a: Double = 7
let b: Float = 7
print(a, b)

ตรวจสอบความเข้าใจ

ทดสอบการอนุมานค่าลิเทอรัล

สรุปทบทวน

ค่าลิเทอรัลจำนวนเต็มมีค่า default เป็น Int ส่วนค่าทศนิยมมีค่า default เป็น Double การระบุชนิดอย่าง : Double : Float : Int8 หรือ : Character จะเขียนทับค่า default โดยปรับชนิดของค่าลิเทอรัลที่ยืดหยุ่น ชนิดตัวเลขจะไม่แปลงโดยปริยาย

let i = 5
let d: Double = 5
print(type(of: i), type(of: d))

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

บทเรียน “การอนุมานจากค่าคงที่” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “การอนุมานจากค่าคงที่”

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

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

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

บทเรียน “การอนุมานจากค่าคงที่” ใช้เวลานานแค่ไหน

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

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

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

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

  1. การอนุมานชนิดทำงานอย่างไร
  2. เมื่อใดควรเพิ่มคำอธิบายชนิดอย่างชัดเจน
  3. การอนุมานจากค่าคงที่
  4. การอนุมานชนิดในคลอเชอร์
← กลับไปที่ Swift Academy