【发布时间】:2013-07-30 13:35:10
【问题描述】:
我正在尝试找到一种从 NSString 计算结果的方法。 有没有简单的 NSString 计算器类?
NSString *str = @"10+20/2";
int result = [[str stringByCalculatingResult] intValue];
NSLog (@"result:%i", result);
首选输出:
result:20
感谢您的解决方案。
类别:
//NSString+Calculator.h
@interface NSString (Calculator)
- (NSString*)stringByCalculatingResult;
@end
//NSString+Calculator.m
@implementation NSString (Calculator)
- (NSString*)stringByCalculatingResult
{
NSExpression *expression = [NSExpression expressionWithFormat:self];
NSNumber *value = [expression expressionValueWithObject:nil context:nil];
return [value stringValue];
}
@end
【问题讨论】:
-
这样使用 NSPredicate 怎么样? stackoverflow.com/questions/8618005/…
标签: objective-c nsstring calculator