Rentetan pantas
Rentetan Swift ialah koleksi aksara. Contohnya, "Hello, World!" ialah koleksi nilai jenis aksara tersusun dan jenis datanya ialah String.
Mencipta rentetan
Anda boleh mencipta rentetan dengan menggunakan rentetan literal atau contoh kelas Rentetan:
import Cocoa // 使用字符串字面量 var stringA = "Hello, World!" print( stringA ) // String 实例化 var stringB = String("Hello, World!") print( stringB )
Keluaran atur cara di atas ialah : :
Hello, World! Hello, World!
String Kosong
Anda boleh menggunakan literal rentetan kosong untuk menetapkan kepada pembolehubah atau memulakan tika kelas String untuk memulakan rentetan kosong. Kita boleh menggunakan atribut rentetan isEmpty untuk menentukan sama ada rentetan itu kosong:
import Cocoa // 使用字符串字面量创建空字符串 var stringA = "" if stringA.isEmpty { print( "stringA 是空的" ) } else { print( "stringA 不是空的" ) } // 实例化 String 类来创建空字符串 let stringB = String() if stringB.isEmpty { print( "stringB 是空的" ) } else { print( "stringB 不是空的" ) }
Hasil keluaran pelaksanaan program di atas ialah:
stringA 是空的 stringB 是空的
Pemalar rentetan
Anda boleh menetapkan rentetan kepada pembolehubah atau pemalar boleh diubah suai, manakala pemalar tidak boleh diubah suai.
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 )
Output pelaksanaan program di atas akan melaporkan ralat, memikirkan bahawa stringB adalah pemalar dan tidak boleh diubah suai:
error: left side of mutating operator isn't mutable: 'stringB' is a 'let' constant stringB += "http://www.php.cn"
Nilai yang disisipkan dalam rentetan
Interpolasi rentetan ialah Satu cara untuk membina rentetan baharu yang boleh mengandungi pemalar, pembolehubah, literal dan ungkapan. Setiap item rentetan literal yang anda masukkan disertakan dalam kurungan yang diawali dengan garis miring ke belakang:
import Cocoa var varA = 20 let constA = 100 var varC:Float = 20.0 var stringA = "\(varA) 乘于 \(constA) 等于 \(varC * 100)" print( stringA )
Output program di atas ialah:
20 乘于 100 等于 2000.0
Sambungan Rentetan
rentetan boleh disambungkan dengan + aksara Contohnya adalah seperti berikut:
import Cocoa let constA = "php中文网:" let constB = "http://www.php.cn" var stringA = constA + constB print( stringA )
Hasil keluaran pelaksanaan program di atas ialah:
php中文网:http://www.php.cn
aksara. Panjang rentetan
Panjang rentetan dikira menggunakan atribut String.characters.count Contohnya adalah seperti berikut:
import Cocoa var varA = "www.php.cn" print( "\(varA), 长度为 \(varA.characters.count)" )
Hasil keluaran pelaksanaan di atas. atur cara ialah:
www.php.cn, 长度为 14
Perbandingan rentetan
Anda boleh menggunakan == untuk membandingkan sama ada dua rentetan adalah sama:
rreeeKeluaran daripada pelaksanaan program di atas ialah:
import Cocoa var varA = "Hello, Swift!" var varB = "Hello, World!" if varA == varB { print( "\(varA) 与 \(varB) 是相等的" ) } else { print( "\(varA) 与 \(varB) 是不相等的" ) }
Unicode String
Unicode ialah piawaian antarabangsa untuk mengekodkan teks String Swift adalah berdasarkan Unicode. Anda boleh menggelung dan mengulang pengekodan UTF-8 dan UTF-16 dalam rentetan Contohnya adalah seperti berikut:
Hello, Swift! 与 Hello, World! 是不相等的
Hasil keluaran pelaksanaan program di atas ialah:
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) ") }
Fungsi rentetan dan simbol operasi
Swift menyokong fungsi dan pengendali rentetan berikut:
Nombor siri | Fungsi/Pengendali & Penerangan |
---|---|
1 | isEmpty Tentukan sama ada rentetan kosong dan kembalikan nilai Boolean |
2 | mempunyaiAwalan(awalan: Rentetan) Periksa sama ada rentetan mempunyai awalan tertentu |
3 | mempunyai akhiran(akhiran: Rentetan) Menyemak sama ada rentetan mempunyai akhiran tertentu. |
4 | Int(String) Tukar nombor rentetan kepada integer.
Contoh: UTF-8 编码: 232 143 156 233 184 159 230 149 153 231 168 139 UTF-16 编码: 33756 40479 25945 31243 |
5 | String.characters.count Hitung panjang rentetan |
6 | utf8 Anda boleh mengakses pengekodan UTF-8 bagi String dengan mengulangi sifat utf8nya |
7 | utf16 Anda boleh mengakses UTF-16 String dengan mengulangi utf8nya pengekodan harta |
8 | unicodeScalars yang boleh anda akses dengan melelaran pada sifat unicodeScalars daripada nilai String Pengekodan skalar Unicodenya. |
9 | + menggabungkan dua rentetan , dan mengembalikan rentetan baharu |
10 | += menggabungkan kedua-dua belah rentetan operator dan tetapkan rentetan baharu kepada pembolehubah operator di sebelah kiri |
11 | == Tentukan sama ada dua rentetan adalah sama |
12 | < Untuk membandingkan dua rentetan, bandingkan huruf dua rentetan itu satu persatu. |
13 | != Membandingkan dua rentetan untuk melihat sama ada ia sama. |