Swift - Dizeler
Swift 4'teki dizeler, "Merhaba, Dünya!" Gibi sıralı bir karakter koleksiyonudur. ve Swift 4 veri türü ile temsil edilirlerString, bu da değerlerin bir koleksiyonunu temsil eder Character yazın.
Bir Dize Oluşturun
Bir dize değişmezi kullanarak veya aşağıdaki gibi bir String sınıfı örneği oluşturarak bir String oluşturabilirsiniz -
// String creation using String literal
var stringA = "Hello, Swift 4!"
print( stringA )
// String creation using String instance
var stringB = String("Hello, Swift 4!")
print( stringB )
//Multiple line string
let stringC = """
Hey this is a
example of multiple Line
string by tutorialsPoint
"""
print(stringC)
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir
Hello, Swift 4!
Hello, Swift 4!
Hey this is a
example of multiple Line
string by tutorialsPoint
Boş Dize
Boş bir dize değişmezi kullanarak veya aşağıda gösterildiği gibi bir String sınıfı örneği oluşturarak boş bir String oluşturabilirsiniz. Boolean özelliğini kullanarak bir dizenin boş olup olmadığını da kontrol edebilirsiniz.isEmpty.
// Empty string creation using String literal
var stringA = ""
if stringA.isEmpty {
print( "stringA is empty" )
} else {
print( "stringA is not empty" )
}
// Empty string creation using String instance
let stringB = String()
if stringB.isEmpty {
print( "stringB is empty" )
} else {
print( "stringB is not empty" )
}
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
stringA is empty
stringB is empty
Dize Sabitleri
Bir değişkene atayarak String'inizin değiştirilip değiştirilemeyeceğini (veya değiştirilip değiştirilemeyeceğini) veya bir sabite atayarak sabit olup olmayacağını belirtebilirsiniz. let aşağıda gösterildiği gibi anahtar kelime -
// stringA can be modified
var stringA = "Hello, Swift 4!"
stringA + = "--Readers--"
print( stringA )
// stringB can not be modified
let stringB = String("Hello, Swift 4!")
stringB + = "--Readers--"
print( stringB )
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
Playground execution failed: error: <EXPR>:10:1: error: 'String' is not
convertible to '@lvalue UInt8'
stringB + = "--Readers--"
Dize Enterpolasyonu
Dize enterpolasyonu, değerlerini bir dize değişmezinin içine dahil ederek sabitlerin, değişkenlerin, değişmezlerin ve ifadelerin karışımından yeni bir String değeri oluşturmanın bir yoludur.
Dize değişmezine eklediğiniz her öğe (değişken veya sabit), bir ters eğik çizgi ile önek olarak bir çift parantez içine alınır. İşte basit bir örnek -
var varA = 20
let constA = 100
var varC:Float = 20.0
var stringA = "\(varA) times \(constA) is equal to \(varC * 100)"
print( stringA )
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
20 times 100 is equal to 2000.0
Dize Birleştirme
İki dizeyi veya bir dizeyi ve bir karakteri ya da iki karakteri birleştirmek için + operatörünü kullanabilirsiniz. İşte basit bir örnek -
let constA = "Hello,"
let constB = "World!"
var stringA = constA + constB
print( stringA )
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
Hello,World!
IP uzunluğu
Swift 4 dizgilerinde bir lengthözelliği, ancak bir dizedeki karakterlerin sayısını saymak için genel count () işlevini kullanabilirsiniz. İşte basit bir örnek -
var varA = "Hello, Swift 4!"
print( "\(varA), length is \((varA.count))" )
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
Hello, Swift 4!, length is 15
Dize Karşılaştırması
İki dize değişkenini veya sabiti karşılaştırmak için == operatörünü kullanabilirsiniz. İşte basit bir örnek -
var varA = "Hello, Swift 4!"
var varB = "Hello, World!"
if varA == varB {
print( "\(varA) and \(varB) are equal" )
} else {
print( "\(varA) and \(varB) are not equal" )
}
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
Hello, Swift 4! and Hello, World! are not equal
String Yineleme
Dizeler yine swift 4'teki değerler koleksiyonudur, böylece döngüleri kullanarak dizge üzerinde yineleyebiliriz. -
for chars in "ThisString" {
print(chars, terminator: " ")
}
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
T h i s S t r i n g
Unicode Dizeleri
Aşağıdaki örnekte gösterildiği gibi, utf8 ve utf16 özelliklerini yineleyerek bir String'in UTF-8 ve UTF-16 temsiline erişebilirsiniz -
var unicodeString = "Dog???"
print("UTF-8 Codes: ")
for code in unicodeString.utf8 {
print("\(code) ")
}
print("\n")
print("UTF-16 Codes: ")
for code in unicodeString.utf16 {
print("\(code) ")
}
Yukarıdaki kod derlendiğinde ve yürütüldüğünde, aşağıdaki sonucu verir -
UTF-8 Codes:
68
111
103
63
63
63
UTF-16 Codes:
68
111
103
63
63
63
Dize İşlevleri ve Operatörleri
Swift 4, Dizelerle ilgili çok çeşitli yöntemleri ve operatörleri destekler -
Sr.No | Fonksiyonlar / Operatörler ve Amaç |
---|---|
1 | isEmpty Bir dizenin boş olup olmadığını belirleyen bir Boolean değeri. |
2 | hasPrefix(prefix: String) Belirli bir parametre dizesinin dizenin öneki olup olmadığını kontrol etme işlevi. |
3 | hasSuffix(suffix: String) Belirli bir parametre dizesinin dizenin son eki olarak var olup olmadığını kontrol etme işlevi. |
4 | toInt() Sayısal String değerini Tamsayıya dönüştürme işlevi. |
5 | count() Bir dizedeki Karakterlerin sayısını saymak için global işlev. |
6 | utf8 Bir dizenin UTF-8 temsilini döndüren özellik. |
7 | utf16 Bir dizenin UTF-16 gösterimini döndüren özellik. |
8 | unicodeScalars Bir dizenin Unicode Skalar gösterimini döndüren özellik. |
9 | + Operatör iki dizeyi veya bir dizeyi ve bir karakteri veya iki karakteri birleştirir. |
10 | += Mevcut bir dizeye bir dize veya karakter eklemek için işleç. |
11 | == Operatör iki dizenin eşitliğini belirler. |
12 | < Operatör, bir dizenin diğerinden daha az değerlendirip değerlendirmediğini belirlemek için sözlüksel bir karşılaştırma gerçekleştirir. |
13 | startIndex Dizenin başlangıç dizinindeki değeri almak için. |
14 | endIndex Stringin bitiş indeksindeki değeri almak için. |
15 | Indices İç mekanlara tek tek ulaşmak için. yani dizenin tüm karakterleri tek tek. |
16 | insert("Value", at: position) Bir konuma değer eklemek için. |
17 | remove(at: position) removeSubrange(range) bir konumdaki bir değeri kaldırmak veya dizeden bir dizi değeri kaldırmak için. |
18 | reversed() bir dizenin tersini döndürür |