cadeia Swift
Swift é um conjunto de cadeias de caracteres. Por exemplo, o conjunto de valores do tipo de caracteres "Olá, mundo!" Então ordenou, seu tipode dados String.
criar strings
Você pode criar uma instância da string usando uma classe string literal ou string:
import Cocoa // 使用字符串字面量 var stringA = "Hello, World!" print( stringA ) // String 实例化 var stringB = String("Hello, World!") print( stringB )
A saída de execução de programa acima é:
Hello, World! Hello, World!
string vazia
Você pode usar uma string literal vazia atribuída à variável ou inicializar uma instância da classe String com o valor inicial de uma cadeia vazia. Podemos usar isEmpty propriedade de cadeia para determinar se uma string está vazia:
import Cocoa // 使用字符串字面量创建空字符串 var stringA = "" if stringA.isEmpty { print( "stringA 是空的" ) } else { print( "stringA 不是空的" ) } // 实例化 String 类来创建空字符串 let stringB = String() if stringB.isEmpty { print( "stringB 是空的" ) } else { print( "stringB 不是空的" ) }
A saída de execução de programa acima é:
stringA 是空的 stringB 是空的
Constantes de string
Você pode atribuir uma string a uma variável variável ou constante é modificável, constantes não podem ser modificados.
import Cocoa // stringA 可被修改 var stringA = "本教程:" stringA += "http://www.w3write.com" print( stringA ) // stringB 不能修改 let stringB = String("本教程:") stringB += "http://www.w3write.com" print( stringB )
A saída do erro de execução do programa acima vai resultar, que stringB constante não pode ser modificada:
error: left side of mutating operator isn't mutable: 'stringB' is a 'let' constant stringB += "http://www.w3write.com"
Insira o valor de cadeia
Interpolação de string é uma nova maneira de construir uma cadeia que pode conter constantes, variáveis, literais e expressões nele. Cada inserir suas strings literais são prefixados com uma barra invertida entre parênteses:
import Cocoa var varA = 20 let constA = 100 var varC:Float = 20.0 var stringA = "\(varA) 乘于 \(constA) 等于 \(varC * 100)" print( stringA )
A saída de execução de programa acima é:
20 乘于 100 等于 2000.0
concatenação
Cordas pode ser ligado porum sinal de +,os exemplos são os seguintes:
import Cocoa let constA = "本教程:" let constB = "http://www.w3write.com" var stringA = constA + constB print( stringA )
A saída de execução de programa acima é:
本教程:http://www.w3write.com
comprimento da corda
comprimento de cadeia é calculada usando as propriedadesString.characters.count, os exemplos são os seguintes:
import Cocoa var varA = "www.w3write.com" print( "\(varA), 长度为 \(varA.characters.count)" )
A saída de execução de programa acima é:
www.w3write.com, 长度为 14
comparação de cadeia
Você pode usar== para comparar duas seqüências são iguais:
import Cocoa var varA = "Hello, Swift!" var varB = "Hello, World!" if varA == varB { print( "\(varA) 与 \(varB) 是相等的" ) } else { print( "\(varA) 与 \(varB) 是不相等的" ) }
A saída de execução de programa acima é:
Hello, Swift! 与 Hello, World! 是不相等的
cadeias de caracteres Unicode
Unicode é um padrão internacional para a codificação de texto, tipo String de Swift é baseado no Unicode construído. Você pode iteração do loop a codificação de string UTF-8 e UTF-16, os exemplos são os seguintes:
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) ") }
A saída de execução de programa acima é:
UTF-8 编码: 232 143 156 233 184 159 230 149 153 231 168 139 UTF-16 编码: 33756 40479 25945 31243
Funções para String e Operadores
Swift suporta as seguintes funções de cadeia e operadores:
Não. | Função / Operador & Descrição |
---|---|
1 | isEmpty Para determinar se a cadeia está vazia, ele retorna um valor booleano |
2 | hasPrefix (prefix: String) Verifique se o string tem um prefixo específico |
3 | hasSuffix (sufixo: String) Verifique se a cadeia tem um sufixo específico. |
4 | Int (String) Digital converte a cadeia para um inteiro. exemplo: let myString: String = "256" let myInt: Int? = Int(myString) |
5 | String.characters.count Calcular o comprimento da cadeia |
6 | utf8 Você pode acessá-lo por andar a codificação UTF-8 da propriedade String utf8 |
7 | UTF16 Você pode acessá-lo por andar a codificação UTF-16 de propriedade utf8 Cordas |
8 | unicodeScalars Você pode acessá-lo por andar codificados Unicode unicodeScalars escalares atribuem valor de cadeia. |
9 | + Concatenar duas strings e retorna uma nova seqüência |
10 | + = Ambos os lados do operador de concatenação eo novo operador atribuídos à variável de cadeia no lado esquerdo |
11 | == Determinar se duas seqüências são iguais |
12 | < Comparar duas cordas, duas sequências de letras by-side comparação. |
13 | ! = Compara duas cordas? Não são iguais. |