อักขระและกลุ่มกราฟีม
ดูว่าเหตุใดอักขระหนึ่งตัวจึงประกอบด้วยสเกลาร์หลายตัวได้
อักขระและกลุ่มกราฟีม เป็นบทเรียน Swift Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Swift Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Swift Academy มีบทเรียนทั้งหมด 4 บทเรียน
ชนิดอักขระ
ใน Swift ชนิด Character แทนอักขระเดี่ยวที่มนุษย์อ่านได้ ส่วน String คือคอลเลกชันของอักขระเหล่านี้
let letter: Character = "A"
print(letter)
print(type(of: letter))อักขระเทียบกับสตริง
ลิเทอรัลที่อยู่ในอัญประกาศคู่จะเป็น String โดยค่าเริ่มต้น ให้ระบุชนิดเป็น Character หากต้องการค่าอักขระเดี่ยว
let s = "A"
let c: Character = "A"
print(type(of: s), type(of: c))กลุ่มกราฟีมแบบขยาย
Character ของ Swift คือกลุ่มกราฟีมแบบขยาย ซึ่งประกอบด้วยสเกลาร์ Unicode อย่างน้อยหนึ่งตัวที่รวมกันแสดงเป็นอักขระที่มองเห็นได้หนึ่งตัว
let e: Character = "e"
print(e)
print("A Character is one visible symbol")เครื่องหมายประกอบ
อักขระที่มีเครื่องหมายกำกับเสียงอาจประกอบด้วยอักขระฐานกับเครื่องหมายประกอบ แต่ Swift ก็ยังถือว่าคู่นี้เป็น Character เดียว
let combined: Character = "e\u{301}"
print(combined)
print("Displayed as one accented e")อีโมจิในฐานะอักขระเดี่ยว
อีโมจิจำนวนมากเป็นกลุ่มกราฟีมเดี่ยว จึงนับเป็น Character เดียว แม้ว่าภายในจะใช้หลายไบต์ก็ตาม
let smiley: Character = "\u{1F600}"
print(smiley)กลุ่มอีโมจิที่ซับซ้อน
อีโมจิบางตัวรวมสเกลาร์หลายตัว เช่น โทนสีผิวและตัวเชื่อมความกว้างศูนย์ ให้เป็นสัญลักษณ์ที่มองเห็นได้หนึ่งตัว ซึ่ง Swift จะนับเป็น Character เดียวอย่างถูกต้อง
let family = "\u{1F468}\u{200D}\u{1F469}\u{200D}\u{1F467}"
print("Count:", family.count)การวนซ้ำผ่านอักขระ
คุณสามารถวนซ้ำผ่านสตริงด้วย for-in เพื่อเข้าถึง Character แต่ละตัวตามลำดับ
for ch in "Hi!" {
print(ch)
}การสร้างสตริงจากอักขระ
คุณสามารถสร้าง String จากอาร์เรย์ของค่า Character ได้
let chars: [Character] = ["S", "w", "i", "f", "t"]
let word = String(chars)
print(word)การเพิ่มอักขระต่อท้าย
ใช้ append เพื่อเพิ่ม Character ต่อท้ายสตริง
var greeting = "Hello"
greeting.append("!")
print(greeting)การเปรียบเทียบอักขระ
คุณสามารถเปรียบเทียบค่า Character ว่าเท่ากันหรือไม่ ซึ่งมีประโยชน์เมื่อตรวจดูข้อความ
let target: Character = "x"
let found = "fox".contains { $0 == target }
print("Contains x:", found)เหตุผลที่กลุ่มกราฟีมมีความสำคัญ
การถือว่าอักขระตามที่ผู้ใช้มองเห็นเป็นหน่วยเดียว ทำให้ความยาวสตริงและการเข้าถึงตามดัชนีสอดคล้องกับสิ่งที่ผู้ใช้เห็นจริง แม้จะเป็นอีโมจิหรืออักขระที่มีเครื่องหมายกำกับเสียง
let cafe = "caf\u{e9}"
print("Visible characters:", cafe.count)ตรวจสอบอย่างรวดเร็ว
ทบทวนว่า Character ของ Swift แทนสิ่งใด
ทบทวน: อักขระและกลุ่มกราฟีม
คุณได้เรียนรู้ว่า Character จำลองอักขระที่มองเห็นได้หนึ่งตัวในรูปกลุ่มกราฟีมแบบขยาย ว่าเครื่องหมายประกอบและอีโมจิที่ซับซ้อนยังคงนับเป็น Character เดียว และว่าคุณสามารถวนซ้ำ สร้าง และเปรียบเทียบอักขระได้อย่างเชื่อถือได้
let text = "ab\u{1F600}"
print("Characters:", text.count)
for ch in text { print(ch) }เรียนรู้ Swift ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 122
- บทเรียน
- 409
คำถามที่พบบ่อย
บทเรียน “อักขระและกลุ่มกราฟีม” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “อักขระและกลุ่มกราฟีม” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Swift Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Swift Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “อักขระและกลุ่มกราฟีม”
ดูว่าเหตุใดอักขระหนึ่งตัวจึงประกอบด้วยสเกลาร์หลายตัวได้ คุณปฏิบัติ Swift Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Swift Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน Swift Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “อักขระและกลุ่มกราฟีม” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน Swift Academy นี้ได้ไหม
ได้ บทเรียน Swift Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- อักขระและกลุ่มกราฟีม
- Unicode Scalars และจุดรหัส
- การนับและวนซ้ำอักขระ
- มุมมองการเข้ารหัส: utf8, utf16, unicodeScalars