gpt4 book ai didi

swift - hasPrefix 在可选字符串上的行为不当

转载 作者:搜寻专家 更新时间:2023-10-31 22:09:12 24 4
gpt4 key购买 nike

为什么以下总是打印不正确的“prefix”,但当 String 不是可选的或隐式解包可选时打印“无前缀”?

var value:String! = "aaa"  // Same incorrect behavior on Optional String as well.
if value?.hasPrefix("bbb") {
NSLog("prefix")
}
else {
NSLog("no prefix")
}

最佳答案

if 语句正在检查语句是否返回值或 nil,而不是它是否返回 true 或 false。您可以使用另一个 if 语句来检查 hasPrefix() 的值。

var value:String! = "aaa"  // Same incorrect behavior on Optional String as well.
if let hasPrefix = value?.hasPrefix("bbb") {
if hasPrefix{
NSLog("prefix")
}
else {
NSLog("no prefix")
}
}
else {
NSLog("nil value")
}

关于swift - hasPrefix 在可选字符串上的行为不当,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24481859/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com