金额的分割和简写

我们在开发一些金融类和直播类的APP时候,有时候要显示金额的数目,但是金额过于大的时候需要分割和简写,现在把自己的方法分享出来,一起探讨

- (NSString *)changeAsset:(NSString *)amountStr
{
    if (amountStr && ![amountStr isEqualToString:@""])
    {
        NSInteger num = [amountStr integerValue];
        if (num<100000)
        {
            return amountStr  ;
        }
        else
        {
          // NSString *str = [NSString stringWithFormat:@"%d",num/1000];
            NSInteger  aaa = num/1000;
            
            NSString *str = [NSString stringWithFormat:@"%.1f",aaa/10.0];

            NSRange range = [str rangeOfString:@"."];
            str = [str substringToIndex:range.location+2];
            if ([str hasSuffix:@".0"])
            {
                return [NSString stringWithFormat:@"%@万",[str substringToIndex:str.length-2]];
            }
            else
                return [NSString stringWithFormat:@"%@万",str];
        }
    }
    else
        return @"0";
}

如:

1                                  显示为1

10                                显示为10

102                              显示为102

1024                           显示为1024

10242                        显示为10242

102420                       显示为10.2万

102999                       显示为10.2万

1024204                     显示为102.4万

10242048                  显示为1024.2万

 

posted @ 2017-06-13 10:55  qinxiaoguang  阅读(957)  评论(0编辑  收藏  举报