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

ตัวดำเนินการเปรียบเทียบและตรวจสอบเอกลักษณ์

เปรียบเทียบค่าด้วย ==, !=, และตรวจสอบเอกลักษณ์ด้วย ===

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

ตัวดำเนินการเปรียบเทียบ

ตัวดำเนินการเปรียบเทียบใช้ถามคำถามที่มีคำตอบใช่หรือไม่ใช่ และคืนค่าเป็น Bool Swift มี ==, !=, <, >, <= และ >=

print(3 == 3)
print(5 != 2)
print(4 < 10)

ความเท่ากันและความไม่เท่ากัน

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

let a = "swift"
let b = "Swift"
print(a == b)
print(a != b)

น้อยกว่าและมากกว่า

< และ > ใช้เปรียบเทียบลำดับ โดยเป็นพื้นฐานของการเรียงลำดับและการตรวจสอบช่วงค่า

let temperature = 22
print(temperature > 18)
print(temperature < 0)

น้อยกว่าหรือเท่ากับและมากกว่าหรือเท่ากับ

<= และ >= จะรวมค่าที่อยู่ตรงขอบเขตด้วย จึงมีประโยชน์เมื่อค่าขีดจำกัดเองควรผ่านเงื่อนไข

let score = 60
print("Pass:", score >= 60)
print("Perfect or less:", score <= 100)

การเปรียบเทียบในเงื่อนไข

ผลลัพธ์จากการเปรียบเทียบจะควบคุมคำสั่ง if และลูป ทำให้โปรแกรมของคุณตัดสินใจได้

let age = 17
if age >= 18 {
    print("Adult")
} else {
    print("Minor")
}

การเปรียบเทียบสตริง

สตริงจะถูกเปรียบเทียบตามลำดับพจนานุกรมโดยใช้ Unicode ส่วน == ใช้ตรวจสอบความเท่ากันแบบ exact

print("apple" < "banana")
print("Zoo" < "apple")
print("cat" == "cat")

การเชื่อมการเปรียบเทียบด้วยตรรกะ

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

let value = 7
let inRange = value >= 1 && value <= 10
print("In range 1...10:", inRange)

ชนิดค่าเปรียบเทียบตามเนื้อหา

สำหรับชนิดค่า เช่น Int และ String ตัวดำเนินการ == จะเปรียบเทียบเนื้อหาจริง ค่าที่มีโครงสร้างเท่ากันสองค่าจะถือว่าเท่ากัน

let point1 = (x: 1, y: 2)
let point2 = (x: 1, y: 2)
print(point1 == point2)

เอกลักษณ์ของการอ้างอิงด้วยเครื่องหมายเท่ากับสามตัว

คลาสเป็นชนิดอ้างอิง ตัวดำเนินการตรวจสอบเอกลักษณ์ === ใช้ทดสอบว่าการอ้างอิงสองรายการชี้ไปยัง ออบเจ็กต์เดียวกันแบบ exact ในหน่วยความจำหรือไม่ ไม่ได้ตรวจสอบว่าเนื้อหาตรงกันหรือไม่

class Box { var n: Int; init(_ n: Int) { self.n = n } }
let x = Box(5)
let y = x
print(x === y)

ไม่ใช่ออบเจ็กต์เดียวกันด้วยเครื่องหมายไม่เท่ากับสามตัว

!== เป็นสิ่งตรงข้ามกับ === ออบเจ็กต์สองรายการที่แยกจากกันแต่มีข้อมูลเหมือนกันจะถือว่า ไม่ใช่ออบเจ็กต์เดียวกัน

class Box { var n: Int; init(_ n: Int) { self.n = n } }
let a = Box(5)
let b = Box(5)
print(a === b)
print(a !== b)

เอกลักษณ์เทียบกับความเท่ากัน

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

class Box { var n: Int; init(_ n: Int) { self.n = n } }
let first = Box(1)
let alias = first
let other = Box(1)
print("same object:", first === alias)
print("different object:", first === other)

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

ลองพิจารณาความแตกต่างระหว่างเอกลักษณ์กับความเท่ากันสำหรับอินสแตนซ์ของคลาส

สรุป: การเปรียบเทียบและเอกลักษณ์

คุณได้เรียนรู้การใช้ == != < > <= >= เพื่อเปรียบเทียบลำดับและความเท่ากัน เรียนรู้ว่าชนิดค่าจะเปรียบเทียบจากเนื้อหา และคลาสจะเพิ่ม === / !== สำหรับทดสอบว่าการอ้างอิงสองรายการเป็นอินสแตนซ์เดียวกันหรือไม่

class Node { var v: Int; init(_ v: Int) { self.v = v } }
let n1 = Node(3)
let n2 = n1
print("equal value check:", n1.v == n2.v)
print("same instance:", n1 === n2)

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

บทเรียน “ตัวดำเนินการเปรียบเทียบและตรวจสอบเอกลักษณ์” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “ตัวดำเนินการเปรียบเทียบและตรวจสอบเอกลักษณ์”

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

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

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

บทเรียน “ตัวดำเนินการเปรียบเทียบและตรวจสอบเอกลักษณ์” ใช้เวลานานแค่ไหน

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

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

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

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

  1. ตัวดำเนินการคณิตศาสตร์และการกำหนดค่าแบบผสม
  2. ตัวดำเนินการเปรียบเทียบและตรวจสอบเอกลักษณ์
  3. ตัวดำเนินการตรรกะและการประเมินแบบลัด
  4. ตัวดำเนินการระดับบิตและโอเวอร์โฟลว์
← กลับไปที่ Swift Academy