ios开发--3行代码搞定千分位分割数字

精简方法(适用于小数)

 //double num =945253523532531.349834;
    NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
    [numberFormatter setPositiveFormat:@"###,##0.00;"];
    NSString *formattedNumberString = [numberFormatter stringFromNumber:[NSNumber numberWithDouble:num]];
//    return formattedNumberString;
//若用于整数改为:[numberFormatter setPositiveFormat:@"###,##0;"];

常规方法(相对于整数)

-(NSString *)ChangeNumberFormat:(NSString *)num
{
    if (num == nil) {
        return @"";
    }
    int count = 0;
    long long int a = num.longLongValue;
    while (a != 0)
    {
        count++;
        a /= 10;
    }
    NSMutableString *string = [NSMutableString stringWithString:num];
    NSMutableString *newstring = [NSMutableString string];
    while (count > 3) {
        count -= 3;
        NSRange rang = NSMakeRange(string.length - 3, 3);
        NSString *str = [string substringWithRange:rang];
        [newstring insertString:str atIndex:0];
        [newstring insertString:@"," atIndex:0];
        [string deleteCharactersInRange:rang];
    }
    [newstring insertString:string atIndex:0];
    return newstring;
}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 问答题47 /72 常见浏览器兼容性问题与解决方案? 参考答案 (1)浏览器兼容问题一:不同浏览器的标签默认的外补...
    _Yfling阅读 14,680评论 1 92
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 175,254评论 25 709
  • 我从未想过,这一方屏幕的对面坐着何样的你,只是年少时不在意,读着你笑我痴的话,扬起嘴角,更憨而已。 我都不记得,什...
    九不才阅读 1,813评论 0 0
  • typeof关键字是C语言中的一个新扩展。 typeof的参数可以是两种形式:表达式或类型。 下面是使用表达式的的...
    shalapovar阅读 12,884评论 0 1
  • 最近加入了一个日记班。 班主任很有意思,网名叫“万能的姐夫”。 明朝《初刻拍案惊奇》里有故事言:“俺怎生没后代?现...
    少家说阅读 4,044评论 2 4