Objective c 比较NSDecimalNumber赢得的';不行?
由于某些原因,比较逻辑无法正常工作。。。它不会比较两个十进制对象。有时有效,有时无效。真奇怪。if语句适用于某些编译,有时不适用。这样做对吗 数据来自一个json文件,该文件是一个2点十进制数字,如下所示:Objective c 比较NSDecimalNumber赢得的';不行?,objective-c,nsdecimalnumber,Objective C,Nsdecimalnumber,由于某些原因,比较逻辑无法正常工作。。。它不会比较两个十进制对象。有时有效,有时无效。真奇怪。if语句适用于某些编译,有时不适用。这样做对吗 数据来自一个json文件,该文件是一个2点十进制数字,如下所示:63.32 为什么这不能正常工作 NSError * error; NSDictionary * json = [NSJSONSerialization JSONObjectWithData:responceData options:kNilOptions error:error];
63.32
为什么这不能正常工作
NSError * error;
NSDictionary * json = [NSJSONSerialization JSONObjectWithData:responceData options:kNilOptions error:error];
NSArray * latestPrice = [json objectForKey:@"data"];
NSLog(@"Latest price %@", latestPrice);
NSNumber * value = [(NSDictionary*)[latestPrice objectForKey:@"last_offer"] objectForKey:@"display"];
NSString * val = [[NSString alloc] initWithFormat:@"%@", value];
NSString * valFinal = [val stringByTrimmingCharactersInSet:[NSCharacterSet symbolCharacterSet]];
NSDecimalNumber *number = [NSDecimalNumber decimalNumberWithString:valFinal];
NSLog(@"%@", number);
NSString * val2 = [[NSString alloc] initWithString:@"44.14"];
NSDecimalNumber *number2 = [NSDecimalNumber decimalNumberWithString:val2];
if(number2 >= number){
NSLog(@"ds");
}
我需要将json值与具有相同小数点的本地值进行比较。
NSDecimalNumber
是一个对象。您试图比较内存地址。使用
比较:
NSDecimalNumber的实例方法
if ([number compare:number2] == NSOrderedAscending)
NSDecimalNumber是一个对象。你在比较地址。阅读课程规范,看看如何进行比较。太棒了!非常感谢。