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:

rreee

Keluaran 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 siriFungsi/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.