ตัวดำเนินการเปรียบเทียบและตรวจสอบเอกลักษณ์
เปรียบเทียบค่าด้วย ==, !=, และตรวจสอบเอกลักษณ์ด้วย ===
ตัวดำเนินการเปรียบเทียบและตรวจสอบเอกลักษณ์ เป็นบทเรียน 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 ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- ตัวดำเนินการคณิตศาสตร์และการกำหนดค่าแบบผสม
- ตัวดำเนินการเปรียบเทียบและตรวจสอบเอกลักษณ์
- ตัวดำเนินการตรรกะและการประเมินแบบลัด
- ตัวดำเนินการระดับบิตและโอเวอร์โฟลว์