开发者社区> 问答> 正文

如例子中转换格式到数字格式

转换货币格式到数字格式

比如字符串变量是@"10 lakh"转换成数字值后应该是1000000。应该怎么实现?

展开
收起
爵霸 2016-03-19 11:42:13 2663 0
1 条回答
写回答
取消 提交回答
  • - (NSNumber *)multiplierForKey:(NSString *)key
    {
    
        NSDictionary *dict = @{@"thousand":@1000, @"lakh":@100000, @"million":@1000000, @"crore":@100000000};
        NSNumber *value = dict[[key lowercaseString]];
        return value?value:@1;
    }
    
    - (void)findMultiplier{
    
        NSString *string = @"10 lakh";
    
        NSArray *components = [string componentsSeparatedByString:@" "];
    
        if ([components count]==2) {
            NSNumber *value = components[0];
            NSString *key = components[1];
            NSNumber *multiplier = [self multiplierForKey:key];
    
            NSDecimalNumber *decimalValue = [NSDecimalNumber decimalNumberWithDecimal:[value decimalValue]];
            NSDecimalNumber *multiplierValue = [NSDecimalNumber decimalNumberWithDecimal:[multiplier decimalValue]];
    
            NSDecimalNumber *finalValue = [decimalValue decimalNumberByMultiplyingBy:multiplierValue];
            NSLog(@"Value : %@",finalValue);
        }
    }
    2019-07-17 19:07:54
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载