- Published on
Swiftda Characters va Strings
- Authors
- Name
- ShoxruxC
- @iOSdasturchi
Character — bu bitta belgidan iborat matnni ifodalovchi ma'lumot turi ("a", "@", "5" va hokazo).
Swiftda Character turidagi o'zgaruvchilarni yaratish uchun Character kalit so‘zidan foydalanamiz. Masalan:
var letter: Character
Bu yerda letter o'zgaruvchisi faqat bitta belgi saqlashi mumkin.
Character misol
// character o'zgaruvchi yaratish
var letter: Character = "H"
print(letter) // H
var symbol: Character = "@"
print(symbol) // @
Yuqoridagi misolda biz letter va symbol nomli ikkita Character o‘zgaruvchini yaratdik. Ularga mos ravishda "H" va "@" qiymatlari berilgan.
Character turidagi o‘zgaruvchiga bir nechta belgi (
"abc") berilsa, xatolik yuz beradi.
// noto'g'ri: bir nechta belgi berilgan
let test: Character = "H@"
print(test)
// Xatolik:
// cannot convert value of type 'String' to specified type Character
String
Swift'da String matnli ma’lumotlarni saqlash uchun ishlatiladi.
String o‘zgaruvchi yaratish uchun String kalit so‘zidan foydalanamiz:
let name: String
Bu yerda name faqat matn (string) saqlashi mumkin.
String bir nechta belgilardan iborat bo‘lgani uchun uni belgilar ketma-ketligi deb ham ataydi.
Misol:
// string o'zgaruvchilar yaratish
let name: String = "Swift"
print(name)
let message = "I love Swift."
print(message)
Natija:
Swift
I love Swift.
let message = "I love Swift." satrida String kalit so‘zi ishlatilmagan. Chunki Swift qiymatga qarab o‘zgaruvchi turini o‘zi aniqlaydi.
Swift’da stringlar va characterlar ikki tirnoq (
" ") bilan yoziladi.
String amallari
Swift String turi matn bilan ishlash uchun ko‘plab funksiyalarni taqdim etadi.
1. Ikki stringni solishtirish
== operatori ikki string teng bo‘lsa true, teng bo‘lmasa false qaytaradi.
let str1 = "Hello, world!"
let str2 = "I love Swift."
let str3 = "Hello, world!"
print(str1 == str2)
print(str1 == str3)
Natija:
false
true
2. Ikki stringni qo‘shish
Stringlarni birlashtirish uchun append() metodidan foydalanish mumkin.
var greet = "Hello "
var name = "Jack"
greet.append(name)
print(greet)
Natija:
Hello Jack
+ va += bilan qo‘shish
var greet = "Hello, "
let name = "Jack"
var result = greet + name
print(result)
greet += name
print(greet)
Natija:
Hello, Jack
Hello, Jack
greetlet bo‘lsa,+=ishlamaydi, chunki u qiymatni o‘zgartiradi.
3. String uzunligini aniqlash
String uzunligini olish uchun .count xususiyati ishlatiladi:
let message = "Hello, World!"
print(message.count) // 13
.count` bo‘sh joylarni ham hisobga oladi.
Boshqa foydali funksiyalar
| Funksiya | Ta'rif |
|---|---|
| isEmpty | String bo‘sh yoki bo‘sh emasligini tekshiradi |
| capitalized | Har bir so‘zning bosh harfini katta qiladi |
| uppercased() | Barcha harflarni katta qiladi |
| lowercased() | Barcha harflarni kichik qiladi |
| hasPrefix() | Matn ma'lum belgilar bilan boshlanishini tekshiradi |
| hasSuffix() | Matn ma'lum belgilar bilan tugashini tekshiradi |
Escape sequences
Escape-sequence’lar string ichida maxsus belgilarni yozish uchun ishlatiladi.
Masalan, string ichida qo‘shtirnoq ishlatmoqchi bo‘lsak:
var example = "This is "String" class"
Bu xato beradi.
To‘g‘ri yechim — \ ishlatish:
var example = "This is \"String\" class"
print(example)
Natija:
This is "String" class
| Escape | Ma'nosi |
|---|---|
\0 | null |
\\ | backslash |
\t | gorizontal tab |
\n | yangi qatordan davom etish |
\" | qo‘shtirnoq |
String interpolatsiyasi
\() yordamida o‘zgaruvchini string ichida ishlatish mumkin:
let name = "Swift"
var message = "This is \(name) programming."
print(message)
Natija:
This is Swift programming.
Bu jarayon string interpolatsiyasi deyiladi.
Ko‘p qatorli string (Multiline String)
Stringni bir nechta qatorda yozish uchun """ ishlatiladi:
var str: String = """
Swift is awesome
I love Swift
"""
print(str)
Natija:
Swift is awesome
I love Swift
Multiline string yangi qatordan boshlanishi shart.
Noto‘g‘ri misol:
var str = """Swift
I love Swift
"""
String obyekt yaratish
Stringni bo‘sh holda ham yaratish mumkin:
var str = String()
Bu usul bo‘sh string yaratadi.