Swift:
Визначення довжини рядка
How to (Як це зробити):
Swift makes checking a string’s length straightforward. Use the count property of a string instance. Here’s how:
let greeting = "Вітаю"
let length = greeting.count
print("The length of the string is \(length)")Sample Output:
The length of the string is 6Strings with complex characters, like emojis, are handled correctly:
let emojiGreeting = "Hello 👋"
print("The emoji string length is \(emojiGreeting.count)")Sample Output:
The emoji string length is 7Deep Dive (Поглиблений Огляд):
Historically, string length calculation could trip up new developers due to Unicode complexities. In some languages, it was not a simple property access.
Swift’s String type is Unicode-compliant. This means .count gives you the number of user-perceived characters, known as grapheme clusters, not the underlying code units or bytes. Characters outside the Basic Multilingual Plane, like emojis, are treated as single characters despite being made up of multiple Unicode scalars.
Alternatives? Before count, Swift programmers might have relied on NSString’s length property, which returns the UTF-16 code units count. This method is not Swift-native and can misrepresent the actual character count.
Implementation-wise, Swift’s String keeps track of the character count as you modify the string, so accessing .count is an O(1) operation – fast and independent of the string’s length.
See Also (Дивіться також):
To go beyond the basics:
- Swift Documentation on Strings: Swift.org Documentation
- Deeper look at Unicode and Swift Strings: Swift’s String Manifesto
- Understanding grapheme clusters: Unicode Text Segmentation