如何计算字符串的长度?例如,我有一个定义如下的变量:
var test1: String = "Scott"
然而,我似乎找不到字符串的长度方法。
如何计算字符串的长度?例如,我有一个定义如下的变量:
var test1: String = "Scott"
然而,我似乎找不到字符串的长度方法。
当前回答
如果您只是想查看字符串是否为空(检查长度是否为0),Swift提供了一个简单的字符串布尔测试方法
myString.isEmpty
硬币的另一面是人们在ObjectiveC中询问如何询问字符串是否为空,答案是检查长度是否为0:
NSString为空
其他回答
在Swift中计算字符串的最佳方法是:
var str = "Hello World"
var length = count(str.utf16)
为Xcode 6 beta 4更新,更改方法utf16count-->utf16count
var test1: String = "Scott"
var length = test1.utf16Count
Or
var test1: String = "Scott"
var length = test1.lengthOfBytesUsingEncoding(NSUTF16StringEncoding)
在Swift 4.2和Xcode 10.1中
在Swift中,字符串可以被视为单个字符的数组。所以字符串中的每个字符就像数组中的一个元素。要获取字符串的长度,请使用StringName.count属性。
在Swift中
yourStringName.character.count属性已弃用。所以直接使用strLength.count属性。
let strLength = "This is my string"
print(strLength.count)
//print(strLength.characters.count) //Error: 'characters' is deprecated: Please use String or Substring directly
如果目标C
NSString *myString = @"Hello World";
NSLog(@"%lu", [myString length]); // 11
你可以这样试试
var test1: String = "Scott"
var length = test1.bridgeToObjectiveC().length
Swift 2.0版本:获取计数:yourString.text.characters.count
有趣的有用示例是在UITextView中显示某个数字(例如150)的字符倒计时:
func textViewDidChange(textView: UITextView) {
yourStringLabel.text = String(150 - yourStringTextView.text.characters.count)
}