Ios 如何检查解析键是否为空?如果是,则将其更改为0,而不是零

Ios 如何检查解析键是否为空?如果是,则将其更改为0,而不是零,ios,objective-c,parse-platform,Ios,Objective C,Parse Platform,我正在尝试获取它,因此,如果我的用户(虚拟货币为空)中的一个键默认为该键,那么它会将其设置为字符串值0 我试过了,但不知什么原因,它似乎不起作用 PFUser *currentUser = [PFUser currentUser]; if ([currentUser[@"Money"] isEqual: @""]) { currentUser[@"Money"] = @"0"; } 如果currentUser[@“Money”]是NSString,请尝试以下操作: PFUser *

我正在尝试获取它,因此,如果我的用户(虚拟货币为空)中的一个键默认为该键,那么它会将其设置为字符串值0

我试过了,但不知什么原因,它似乎不起作用

PFUser *currentUser = [PFUser currentUser];
if ([currentUser[@"Money"]  isEqual: @""])
{
    currentUser[@"Money"] = @"0";

}
如果currentUser[@“Money”]是NSString,请尝试以下操作:

PFUser *currentUser = [PFUser currentUser];
if ([currentUser[@"Money"]  isEqualToString:@""])
{
    currentUser[@"Money"] = @"0";

}
您还可以检查
[string length]==0
。这将检查它是否是有效但为空的字符串(@“”),以及它是否为nil,因为对nil调用length也将返回0

如果是NSN号码,请尝试:

PFUser *currentUser = [PFUser currentUser];
if (currentUser[@"Money"]==nil)
{
    currentUser[@"Money"] = @"0";

}
PFObject
(PFUser的子类
PFUser
)故意表现得像
NSDictionary
,正如您在

返回值
与给定键关联的值,如果没有与键关联的值,则为
nil

因此,如果要检查
PFUser
是否为键设置了值,例如,必须检查
nil

if (currentUser[@"Money"] == nil) {
    currentUser[@"Money"] = @"0";
}

哎哟,修复了它,将if条件改为if(currentUser[@“Money”]==nil)您的代码可能有逻辑错误,请具体说明您想检查字符串是否为空或字符串是否为零或空?您是否考虑过在创建时将虚拟货币设置为0?我不知道您现在这样做的原因,但是如果默认值为空,并且您总是将其设置为0,那么在保存用户之前,只需将其设置为0即可。这是有益的,因为您的用户可能没有连接,或者可能由于各种原因无法保存以进行解析。正如上面所写的,没有错误检查。如果在用户创建的同时设置,则可以让用户保存错误检查完成所有工作。
if (currentUser[@"Money"] == nil) {
    currentUser[@"Money"] = @"0";
}