gpt4 book ai didi

ios - NSString 比较 @""== nil

转载 作者:可可西里 更新时间:2023-11-01 03:01:40 27 4
gpt4 key购买 nike

我想比较两个字符串,我希望 nil 等于空白字符串 (@"")。现在我正在这样做,效果很好:

if ([self.firstName ? self.firstName : @"" isEqualToString:anotherContact.firstName ? anotherContact.firstName : @""]) {
// They are equal.
}

但似乎我遗漏了一些更简单的东西。

我在这里不是要区分大小写。如果大小写不同,则测试应该失败。

最佳答案

[string length]

有效,但如果它也为 nil,它将返回零。如果您可以接受,那就更简单了。

顺便说一下,嵌套的三元运算符在您自己的家中是可以的,但如果您编写代码是为了分享,也许最好将它分散一点,这样就很明显了。

针对评论,我的做法是这样的:

    if((([a length] == 0) && ([b length] == 0)) ||
([a isEqualToString:b])) {
// they are equal
}

如果任一子句成功,则字符串相等。第二个捕获任何实际上相等的非零字符串,包括 @""== @""。第一个捕获 ab 都是 nil,或者一个 nil 和一个 @""。我一开始确实把第一个写成 ((a == nil) && (b == nil)) 但你说 @"" 应该等于 nil。

关于ios - NSString 比较 @""== nil,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23923603/

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