我对Objective-C和指针以及诸如此类的东西都很陌生,所以对我来说很容易。
基本上,我在我的代码中有一个位置,我根据日期键从NSArray中提取NSDictionaries。
我通过这样做检查是否相等:
if ([[dictItem valueForKey:@"Date"] isEqualToString: date])
奇怪的是,它只会变为多个对象中的一个,即具有相同指针值的对象。
我如何明确地,毫无疑问地比较两个字符串的VALUE而不是指针地址?
感谢。
编辑:也许我应该提一下,对于失败的所有比较,日期已经从textFields text-property插入到字典中,如果这很重要的话。
答案 0 :(得分:2)
您的代码应该有效。你确定[dictItem valueForKey:@"Date"]
不是零吗?
您是否尝试过在没有字典的情况下进行比较,即直接将某个字符串存储在某个变量中,只是为了检查它是否有效?
此外,您可能需要考虑使用实际的NSDate
个对象。您可以使用NSDateFormatter
将String转换为NSDate,反之亦然。