Swift ciąg
Swift jest zbiorem ciągów znaków. Na przykład, zestaw wartości typu znaków "Hello, World!" Tak nakazał jej typ danychString.
Tworzenie ciągów
Można utworzyć wystąpienie napisu za pomocą ciągów dosłowny lub ciąg klasę:
import Cocoa // 使用字符串字面量 var stringA = "Hello, World!" print( stringA ) // String 实例化 var stringB = String("Hello, World!") print( stringB )
Wyjście powyżej wykonywanie programu jest:
Hello, World! Hello, World!
Pusty ciąg
Można użyć pustego ciągiem znaków przypisany do zmiennej lub zainicjować instancję klasy String do wartości początkowej pusty ciąg. Możemy użyć isEmpty właściwości String w celu określenia, czy ciąg jest pusta:
import Cocoa // 使用字符串字面量创建空字符串 var stringA = "" if stringA.isEmpty { print( "stringA 是空的" ) } else { print( "stringA 不是空的" ) } // 实例化 String 类来创建空字符串 let stringB = String() if stringB.isEmpty { print( "stringB 是空的" ) } else { print( "stringB 不是空的" ) }
Wyjście powyżej wykonywanie programu jest:
stringA 是空的 stringB 是空的
Stałe łańcuchowe
Można przypisać łańcuch do zmiennej zmiennym lub stałym jest modyfikowalny, stałe nie mogą być modyfikowane.
import Cocoa // stringA 可被修改 var stringA = "本教程:" stringA += "http://www.w3big.com" print( stringA ) // stringB 不能修改 let stringB = String("本教程:") stringB += "http://www.w3big.com" print( stringB )
Wyjście z powyższym problem wykonywania programu powoduje, że stringB stałe nie mogą zostać zmienione:
error: left side of mutating operator isn't mutable: 'stringB' is a 'let' constant stringB += "http://www.w3big.com"
Wprowadzić wartość ciągu
Interpolacja String to nowy sposób zbudować ciąg znaków, który może zawierać stałe, zmienne i literały wyrażenia nim. Każdy WPISAć literały ciągów znaków są poprzedzone lewym ukośnikiem w nawiasach:
import Cocoa var varA = 20 let constA = 100 var varC:Float = 20.0 var stringA = "\(varA) 乘于 \(constA) 等于 \(varC * 100)" print( stringA )
Wyjście powyżej wykonywanie programu jest:
20 乘于 100 等于 2000.0
String konkatenacji
Łańcuchy mogą być połączonew znak +przykłady są następujące:
import Cocoa let constA = "本教程:" let constB = "http://www.w3big.com" var stringA = constA + constB print( stringA )
Wyjście powyżej wykonywanie programu jest:
本教程:http://www.w3big.com
długość łańcucha znaków
Długość łańcucha znaków jest obliczana przy użyciu właściwościString.characters.count przykłady są następujące:
import Cocoa var varA = "www.w3big.com" print( "\(varA), 长度为 \(varA.characters.count)" )
Wyjście powyżej wykonywanie programu jest:
www.w3big.com, 长度为 14
porównanie String
Można użyć== porównać dwa ciągi są równe:
import Cocoa var varA = "Hello, Swift!" var varB = "Hello, World!" if varA == varB { print( "\(varA) 与 \(varB) 是相等的" ) } else { print( "\(varA) 与 \(varB) 是不相等的" ) }
Wyjście powyżej wykonywanie programu jest:
Hello, Swift! 与 Hello, World! 是不相等的
ciągi Unicode
Unicode jest międzynarodowym standardem kodowania tekstu, typ String Swift jest oparty na Unicode zbudowany. Można iteracji pętli ciąg kodowania UTF-8 i UTF-16, przykłady przedstawiają się następująco:
import Cocoa var unicodeString = "本教程" print("UTF-8 编码: ") for code in unicodeString.utf8 { print("\(code) ") } print("\n") print("UTF-16 编码: ") for code in unicodeString.utf16 { print("\(code) ") }
Wyjście powyżej wykonywanie programu jest:
UTF-8 编码: 232 143 156 233 184 159 230 149 153 231 168 139 UTF-16 编码: 33756 40479 25945 31243
Funkcje łańcuchowe i operatory
Swift obsługuje następujące funkcje i operatory ciągów:
Nie. | Funkcja / Operator i opis |
---|---|
1 | isEmpty Aby ustalić, czy ciąg jest pusta, funkcja zwraca wartość logiczną |
2 | hasPrefix (prefix: String) Sprawdź, czy ciąg ma określony prefiks |
3 | hasSuffix (sufiks: String) Sprawdź, czy ciąg ma specyficzny przyrostka. |
4 | Int (String) Cyfrowy konwertuje ciąg do liczby całkowitej. Przykład: let myString: String = "256" let myInt: Int? = Int(myString) |
5 | String.characters.count Obliczania długości łańcucha |
6 | utf8 Można uzyskać do niego pieszo kodowanie UTF-8 utf8 właściwości String |
7 | UTF16 Można uzyskać do niego pieszo kodowanie UTF-16 nieruchomości utf8 String |
8 | unicodeScalars Można uzyskać do niego pieszo zakodowane Unicode skalarne unicodeScalars przypisać wartość ciągu. |
9 | + Łączy dwa ciągi i zwraca nowy ciąg |
10 | + = Obie strony operatora konkatenacji i nowego operatora przypisanych do zmiennej łańcuchowej po lewej |
11 | == Ustal, czy dwa ciągi są równe |
12 | < Porównanie dwóch ciągów, dwa ciągi liter by-side porównania. |
13 | ! = Porównuje dwa ciągi? Czy nie są równe. |