Swift Academy · 강의

문자와 자소 클러스터

하나의 Character가 여러 스칼라로 이루어질 수 있는 이유를 알아봅니다.

레슨 1/413개 단계

문자와 자소 클러스터은(는) CoddyKit의 무료 Swift Academy 강의입니다. 이것은 4개 중 1번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 Swift Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. Swift Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

Character 타입

Swift에서 Character 타입은 사람이 읽을 수 있는 하나의 문자를 나타냅니다. String은 이러한 문자들의 컬렉션입니다.

let letter: Character = "A"
print(letter)
print(type(of: letter))

Character와 String 비교

큰따옴표로 작성한 리터럴은 기본적으로 String입니다. 타입을 Character로 명시하면 하나의 문자 값을 얻을 수 있습니다.

let s = "A"
let c: Character = "A"
print(type(of: s), type(of: c))

확장된 자소 클러스터

Swift의 Character는 확장된 자소 클러스터입니다. 함께 하나의 보이는 문자를 표시하는 하나 이상의 유니코드 스칼라로 이루어집니다.

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)

복잡한 이모지 클러스터

일부 이모지는 여러 스칼라(피부색과 너비가 0인 결합 문자 등)를 하나의 보이는 기호로 결합하며, 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 값의 배열로 String을 만들 수 있습니다.

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)

빠른 확인

Swift의 Character가 무엇을 나타내는지 떠올려 보십시오.

복습: 문자와 자소 클러스터

Character가 하나의 보이는 문자를 확장된 자소 클러스터로 모델링하며, 결합 부호와 복잡한 이모지도 여전히 하나의 Character로 계산된다는 점을 배웠습니다. 또한 문자를 안정적으로 순회하고, 만들고, 비교할 수 있습니다.

let text = "ab\u{1F600}"
print("Characters:", text.count)
for ch in text { print(ch) }
무료로 시작

AI 튜터와 함께 Swift을(를) 배우세요 — 무료

브라우저에서 실제 코드를 작성하고 실행하며, 24/7 AI 튜터로부터 즉각적인 도움을 받고, 웹이나 앱에서 중단한 부분부터 계속 학습하세요.

코스
122
레슨
409

자주 묻는 질문

“문자와 자소 클러스터” 강의는 무료인가요?

네 — “문자와 자소 클러스터” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 Swift Academy 강의 전체를 잠금 해제할 수 있습니다. Swift Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“문자와 자소 클러스터”에서 뭘 배우나요?

하나의 Character가 여러 스칼라로 이루어질 수 있는 이유를 알아봅니다. 브라우저에서 직접 실행하는 실습 코드로 Swift Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

Swift Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 Swift Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 1번째 강의입니다.

“문자와 자소 클러스터” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 Swift Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 Swift Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 문자와 자소 클러스터
  2. 유니코드 스칼라와 코드 포인트
  3. 문자 세기와 순회
  4. 인코딩 뷰: utf8, utf16, unicodeScalars
← Swift Academy(으)로 돌아가기