Bu eğitimde, Swift'deki karakterlerin ve dizelerin kullanımı hakkında bilgi edineceksiniz. Ayrıca dizeler ve karakterler üzerinde gerçekleştirilebilecek farklı işlemleri de öğreneceksiniz.
Karakter nedir?
Karakter, tek bir semboldür (harf, sayı vb.) Swift'deki karakter Character
tiptedir ve şu şekilde bildirilir:
let someCharacter: Karakter
Swift'de bir karakter nasıl ilan edilir ve atanır?
Çift tırnak kullanarak String ile aynı Karakter türünde değer atayabilirsiniz, " "
ancak tırnak içinde yalnızca tek bir karakter içermelidir " "
.
Birden fazla karakter eklemeniz gerekiyorsa, bunun String
yerine onu tanımlamanız gerekir Character
.
Örnek 1: Bir karakter bildirmek ve atamak
let someCharacter:Character = “H” let specialCharacter:Character = “@” print(someCharacter) print(specialCharacter)
Programı çalıştırdığınızda, çıktı:
H @
Örnek 2: Birden fazla karakter atama (Çalışmıyor)
Ancak karakterin içine iki sembol atamaya çalışırsanız
/* This will give an error Changing the type to String will fix it. */ let failableCharacter:Character = "H@" print(failableCharacter)
Yukarıdaki kodu çalıştırmayı denediğinizde aşağıdaki gibi bir hata alacaksınız:
String türünün değeri Karaktere dönüştürülemiyor.
Unicode ve kaçış dizisi kullanarak karakter oluşturma
Unicodes kullanarak, örneğin emoji için özel karakter türleri de oluşturabilirsiniz. Kaçış dizisi kullanarak bir unicode oluşturabilirsiniz u (n) (unicode kod noktası, n onaltılıktır).
Örnek 3: Unicode karakteri oluşturma
let heartShape:Character = "u(2665)" print(heartShape)
Programı çalıştırdığınızda, çıktı:
♥
Yukarıdaki örnekte, koddan bir kalp şekli karakteri oluşturulmuştur U+2665
. u(2665)
Çift tırnaklar içinde yer almasına rağmen , derleyici bunu bir String
kaçış dizisi kullandığımız için kabul etmez u(n)
. Bir kaçış dizisi, değişmez değere dahil edildiğinde kendisini temsil etmez.
String nedir?
Bir dize, sadece bir karakter koleksiyonudur. Swift'deki dizeler türdendir String
ve şu şekilde bildirilir:
let someString: String
Swift'de bir dizi nasıl bildirilir ve atanır?
Dize değişmezlerini kullanarak Dize türünde değer atayabilirsiniz. Dize değişmezi, çift tırnaklarla çevrili bir karakter koleksiyonudur " "
.
Örnek 4: Bir dizge bildirme ve atama
let someString:String = "Hello, world!" let someMessage = "I love Swift." print(someString) print(someMessage)
Programı çalıştırdığınızda, çıktı:
Selam Dünya! Swift'i seviyorum.
Burada, sırasıyla someString ve someMessage dize değişkenleri oluşturmak için kullanılan dize değişmezleri "Hello, world!"
ve ikisi de "I love Swift."
vardır.
Bir dizge üzerindeki işlemler
String'de en sık kullanılan işlemlerle ilgilenmek için bazı yerleşik işlevler ve özellikler vardır. Örneğin: dizeleri birleştirmek için, büyük harfle değiştirin veya büyük harf yapın. Aşağıda sık kullanılan bazı işlemleri inceleyelim:
Dize karşılaştırması
Karşılaştırma operatörünü kullanarak iki dizenin eşit olup olmadığını kontrol edebilirsiniz (==)
. Operatör true
, her iki dizge de eşitse döndürür, aksi takdirde döndürür false
.
Örnek 5: Swift'de dize karşılaştırması
let someString = "Hello, world!" let someMessage = "I love Swift." let someAnotherMessage = "Hello, world!" print(someString == someMessage) print(someString == someAnotherMessage)
Programı çalıştırdığınızda, çıktı:
yanlış doğru
Dize birleştirme
Toplama operatörü ile birlikte (+)
veya bileşik atama operatörü kullanılarak iki farklı dize değeri eklenebilir (+=)
. Ayrıca, append
yöntemi kullanarak bir dizeye bir karakter / dize ekleyebilirsiniz .
Örnek 6: Swift'de dize birleştirme
let helloStr = "Hello, " let worldStr = "World" var result = helloStr + worldStr print(result) result.append("!") print(result)
Programı çalıştırdığınızda, çıktı:
Merhaba Dünya Merhaba Dünya!
Yukarıdaki programda + operatörünü kullanarak helloStr ve worldStr ekleyerek bir string sonucu oluşturduk . Böylece ekranda Merhaba, Dünyaprint(result)
çıktıları .
Ayrıca append
yöntemi kullanarak herhangi bir karakter veya dizeyi ekleyebilirsiniz . dizenin result.append("!")
sonuna bir !
karakter ekler . Yani, print(result)
çıkarır , Merhaba Dünya! ekranda.
Gelişmiş atama operatörü kullanarak dize birleştirme
We can also use advanced assignment operator (+=) to append string.
Example 7: String concatenation using += operator
var helloStr = "Hello, " let worldStr = "World!" helloStr += worldStr print(helloStr)
When you run the program, the output will be:
Hello, World!
Notice the use of var instead of let in helloStr. If you have defined helloStr a constant using let, you cannot change it later using the +=
operator and eventually get an error. So, you have to define helloStr a variable.
String Interpolation
It is a simple process of evaluating a string literal that consists of variables, constants etc. Imagine you have player’s name and score stored in two constants as:
let playerName = "Jack" let playerScore = 99
Now you need to display a message to the player as "Congratulations Jack!. Your highest score is 99." Here, you need to a way to use the values of the constants in a single string.
This can be achieved using string concatenation as:
let congratsMessage = "Congratulations " + playerName + "!. Your highest score is " + playerScore + "." print(congratsMessage)
However, you can see this can get messy pretty soon. You have to take care of the spaces after the word Congratulations
, is
. Also, if you have to use more than two constants/variables, it will get unreadable.
There’s an easier way to display the message using string interpolation. Interpolation is the process to include value of a variable or constant inside string literal.
The variable or constant that should insert into the string literal is wrapped in a pair of parentheses ( )
, prefixed by a backslash ()
.
Example 8: String interpolation in Swift
let playerName = "Jack" let playerScore = 99 let congratsMessage = "Congratulations (playerName)!. Your highest score is (playerScore)." print(congratsMessage)
When you run the program, the output will be:
Congratulations Jack!. Your highest score is 99.
Some helpful built-in String functions & variables:
1. isEmpty
This function determines if a string is empty or not. It returns true
if the string is empty otherwise, it returns false
.
Example 9: isEmpty
var emptyString = "" print(emptyString.isEmpty)
When you run the program, the output will be:
true
2. capitalized
This property is used to capitalize every word in a string.
Example 10: capitalized
let someString = "hello, world!" print(someString.capitalized)
When you run the program, the output will be:
Hello, World!
3. uppercased and lowercased
The uppercased function converts string to uppercase letter and the lowercased function converts string to lowercase letter.
Example 11: uppercased() and lowercased()
let someString = "Hello, World!" print(someString.uppercased()) print(someString.lowercased())
When you run the program, the output will be:
HELLO, WORLD! hello, world!
4. Length/count
This property is used to count the total number of characters in a string.
Example 12: count
let someString = "Hello, World!" print(someString.count)
When you run the program, the output will be:
13
5. hasPrefix
Bu işlev, bir dizenin belirli karakterlerle başlayıp başlamadığını belirler ve bir boole değeri döndürür. Bu döndürür true
dize önek aksi sağlanan değerin döner ile eşleşirse false
.
Örnek 13: hasPrefix ()
let someString = "Hello, World!" print(someString.hasPrefix("Hell")) print(someString.hasPrefix("hell"))
Programı çalıştırdığınızda, çıktı:
doğru yanlış
6. hasSuffix
Bu işlev, bir dizenin belirli karakterlerle bitip bitmediğini belirler ve bir boole değeri döndürür. Bu döndürür true
dize eki aksi sağlanan değerin döner ile eşleşirse false
.
Örnek 14: hasSuffix ()
print(someString.hasSuffix("rld!")) print(someString.hasSuffix("Rld!"))
Programı çalıştırdığınızda, çıktı:
doğru yanlış