스위프트 문자열
Swift 문자열은 문자 모음입니다. 예를 들어 "Hello, World!"는 순서가 지정된 문자 유형 값의 모음이고 해당 데이터 유형은 String입니다.
문자열 만들기
문자열 리터럴이나 String 클래스의 인스턴스를 사용하여 문자열을 만들 수 있습니다.
import Cocoa // 使用字符串字面量 var stringA = "Hello, World!" print( stringA ) // String 实例化 var stringB = String("Hello, World!") print( stringB )
위 프로그램 실행의 출력은 다음과 같습니다.
Hello, World! Hello, World!
빈 문자열
비어 있는 문자열을 사용할 수 있습니다. 문자열 리터럴을 변수에 할당하거나 String 클래스의 인스턴스를 초기화하여 빈 문자열을 초기화합니다. 문자열 속성 isEmpty를 사용하여 문자열이 비어 있는지 확인할 수 있습니다.
import Cocoa // 使用字符串字面量创建空字符串 var stringA = "" if stringA.isEmpty { print( "stringA 是空的" ) } else { print( "stringA 不是空的" ) } // 实例化 String 类来创建空字符串 let stringB = String() if stringB.isEmpty { print( "stringB 是空的" ) } else { print( "stringB 不是空的" ) }
위의 프로그램 실행 출력은 다음과 같습니다.
stringA 是空的 stringB 是空的
문자열 상수
문자열을 변수나 상수에 할당할 수 있으며 변수는 수정 가능합니다. 상수는 수정할 수 없습니다.
import Cocoa // stringA 可被修改 var stringA = "php中文网:" stringA += "http://www.php.cn" print( stringA ) // stringB 不能修改 let stringB = String("php中文网:") stringB += "http://www.php.cn" print( stringB )
위 프로그램의 실행 출력은 stringB가 상수이고 수정될 수 없다고 생각하여 오류를 보고합니다.
error: left side of mutating operator isn't mutable: 'stringB' is a 'let' constant stringB += "http://www.php.cn"
문자열에 값 삽입
문자열 보간은 새 문자열을 작성하는 방법입니다. 상수, 변수, 리터럴 및 표현식을 포함할 수 있습니다. 삽입하는 문자열 리터럴의 각 항목은 백슬래시가 접두사로 붙은 괄호로 묶여 있습니다.
import Cocoa var varA = 20 let constA = 100 var varC:Float = 20.0 var stringA = "\(varA) 乘于 \(constA) 等于 \(varC * 100)" print( stringA )
위 프로그램 실행의 출력은 다음과 같습니다.
20 乘于 100 等于 2000.0
문자열 연결
문자열은 연결을 위해 + 숫자로 전달될 수 있습니다.
import Cocoa let constA = "php中文网:" let constB = "http://www.php.cn" var stringA = constA + constB print( stringA )
위 프로그램 실행의 출력 결과는 다음과 같습니다.
php中文网:http://www.php.cn
String length
문자열 길이는 String.characters.count 속성을 사용하여 계산되며, 예는 다음과 같습니다.
import Cocoa var varA = "www.php.cn" print( "\(varA), 长度为 \(varA.characters.count)" )
위 프로그램 실행 출력 결과는 다음과 같습니다.
www.php.cn, 长度为 14
문자열 비교
==를 사용하여 두 문자열이 동일한지 비교할 수 있습니다.
import Cocoa var varA = "Hello, Swift!" var varB = "Hello, World!" if varA == varB { print( "\(varA) 与 \(varB) 是相等的" ) } else { print( "\(varA) 与 \(varB) 是不相等的" ) }
위 프로그램 실행의 출력 결과는 다음과 같습니다.
Hello, Swift! 与 Hello, World! 是不相等的
유니코드 string
유니코드는 텍스트 인코딩에 대한 국제 표준으로, Swift의 문자열 유형은 유니코드를 기반으로 구축되었습니다. 문자열에서 UTF-8 및 UTF-16 인코딩을 반복하고 반복할 수 있습니다. 예는 다음과 같습니다.
import Cocoa var unicodeString = "php中文网" print("UTF-8 编码: ") for code in unicodeString.utf8 { print("\(code) ") } print("\n") print("UTF-16 编码: ") for code in unicodeString.utf16 { print("\(code) ") }
위 프로그램 실행의 출력 결과는 다음과 같습니다.
UTF-8 编码: 232 143 156 233 184 159 230 149 153 231 168 139 UTF-16 编码: 33756 40479 25945 31243
문자열 함수 및 연산자
Swift는 다음 유형의 문자열을 지원합니다. 함수 및 연산자:
일련 번호 | 함수/연산자 및 설명 |
---|---|
1 | isEmpty 은 문자열이 비어 있는지 확인하고 부울 값을 반환합니다 |
2 | hasPrefix(접두사: 문자열) 문자열에 특정 접두사가 있는지 확인 |
3 | hasSuffix(접미사: 문자열) 문자열에 다음이 있는지 확인하세요. 특정 접미사. |
4 | Int(String) 문자열 숫자를 정수로 변환합니다.
예: let myString: String = "256" let myInt: Int? = Int(myString) |
5 | String.characters.count 문자열 길이 계산 |
6 | utf 8 UTF-8 인코딩에 액세스하기 위한 문자열 utf8 속성 |
7 | utf16 utf8 속성 |
8 | unicodeScalars을 반복하여 문자열의 UTF-16 인코딩에 액세스할 수 있습니다. 문자열을 반복할 수 있습니다. 값 unicodeScalars 속성을 사용하여 유니코드 스칼라 인코딩에 액세스합니다. |
9 | + 두 문자열을 연결하고 새 문자열 |
10 | += 연결 연산자 양쪽에 문자열을 추가하고 새 문자열을 왼쪽 연산자 변수에 할당합니다. |
11 | == 두 문자열이 같은지 확인 |
12 | < ; 두 문자열을 비교하고 두 문자열의 문자를 하나씩 비교합니다. |
13 | != 두 문자열을 비교하여 동일한지 확인합니다. |