【问题标题】:Comparing NSStrings seems not to work [duplicate]比较 NSStrings 似乎不起作用[重复]
【发布时间】:2013-02-06 02:50:08
【问题描述】:

在我确信这是一个非常简单的问题上遇到了一些非常令人沮丧的问题,但我似乎无法解决它。我有一个名为 final 的 NSArray,其输出如下:

final = (
".DS_Store",
"hey.txt"
)

我希望下面的 for 循环在第一次传递时返回 false,在第二次传递时返回 true。据我所知,我做得正确,但两次传球的输出都是正确的。

for (int i = 0; i < [final count]; i++) {
   if (final[i] != @".DS_Store") {
    NSLog(@"true");
   }
   else {
    NSLog(@"false");
   }

输出:

2013-02-20 17:20:39.042 myAppName [40636:403] true
2013-02-20 17:20:39.042 myAppName [40636:403] true

我无法弄清楚为什么第一个不返回 false。有什么想法吗?

【问题讨论】:

标签: objective-c cocoa nsstring


【解决方案1】:

您正在比较指针。使用[final[i] isEqualToString:@".DS_Store"] 比较字符串。

【讨论】:

  • 是的!我知道这是一个简单的答案。有不平等的吗?喜欢 isNotEqualtoString?
  • 不,没有。但这只是基本的 C/Objective-C。实际上它是任何语言的基本编程,所以我会让你自己弄清楚。
猜你喜欢
  • 1970-01-01
  • 2013-03-20
  • 1970-01-01
  • 2011-10-31
  • 2022-12-02
  • 1970-01-01
  • 1970-01-01
  • 2013-06-19
  • 1970-01-01
相关资源
最近更新 更多