Iphone 为什么不是';此条件语句是否使用NSUserDefault?
让我的一个条件语句正确显示数据时遇到问题。以下是我正在使用的代码:Iphone 为什么不是';此条件语句是否使用NSUserDefault?,iphone,objective-c,uikit,nsstring,if-statement,Iphone,Objective C,Uikit,Nsstring,If Statement,让我的一个条件语句正确显示数据时遇到问题。以下是我正在使用的代码: NSUserDefaults *pickerDefaults = [NSUserDefaults standardUserDefaults]; NSString *myString = [pickerDefaults stringForKey:@"userpicker"]; NSString *string = @"Name1"; NSLog(@"%@",myString); //This prints out Nam
NSUserDefaults *pickerDefaults = [NSUserDefaults standardUserDefaults];
NSString *myString = [pickerDefaults stringForKey:@"userpicker"];
NSString *string = @"Name1";
NSLog(@"%@",myString); //This prints out Name1
NSLog(@"%@",string); //This also prints out Name1
if (myString == string) {
[pickerArray addObject:@"Name Other"];
}
else {
return;
}
即使这两个字符串彼此相等,我也无法使用if语句将该对象添加到UIPicker。但是,如果我将其更改为不等于!=然后它将显示UIPickerView中的对象。我不明白我做错了什么。任何帮助都会很好。谢谢。要比较字符串对象,不要使用它们的指针值,而是使用
[string isEqualToString:myString]
现在很好用了,谢谢。你得到答案是因为你是第一个回答正确答案的人。
if (myString == string) // Wrong : It compares address of two NSStrings
if ([myString isEqualToString:string]) // This compares values of NSStrings
{
}