• 经营者要想“我心换你心”,就要未雨绸缪,让不诚信的诱惑少一点,如此才能在市场中生存下来。反过来说,承担不起亏损就关门歇业,是否也是一种不诚信呢? 2019-09-14
  • 上海市陆家嘴:打造社区多元治理“共同体” 2019-09-14
  • 2017最具体育活力城市排行榜 2019-09-14
  • 李克勤献唱央视“世界杯主题歌” 2018国语专辑筹备中李克勤 世界杯 2019-09-08
  • 回复@看着就想笑:难道公有制社会主义就不能生存发展吗?事实上公有制会生存发展的更好! 2019-09-03
  • 陵川县全力推进乡村振兴战略 2019-09-01
  • 周国平:男女之爱已经很强烈了,但亲子之爱更强烈 2019-09-01
  • 出租广州市荔湾区芳村大道东169号 2019-08-29
  • (原创)取消“份子钱”是出租车改革必须迈出的一步 2019-08-21
  • Facebook公关掌门离职 是应对隐私丑闻干将 2019-08-20
  • 你这纯粹是胡说八道!农民的宅基地,需要交钱才能使用吗?你敢推行这样的政策吗?你也只敢推行对工人的住宅地,要交钱才能使用!这样合理吗?那些交不起房钱的人,难道应该 2019-08-13
  • 西部网(陕西新闻网)硬科技频道 2019-08-13
  • 新华时评:成果不易,更需诚意与信任呵护 2019-08-09
  • 好好的书报亭放没放样,周围堆得一塌糊涂乱七八糟,真正的主人都搓麻将去了。再现代化造型在金钱至上的社会不可能再有相应的雅知气了。 2019-08-09
  • 2018海创会带你领略黑科技产品 2019-08-05
  • 香港旺角hk平码三中三:iOS中NSNumberFormatter的介绍与用法

    平码三中山论坛 www.mslzq.tw 前言

    iOS中NSDateFormatter用的范围一般来说比较广泛,不过相对于处理数字而言,很少用到NSNumberFormatter,NSNumberFormatter中有很多枚举类型,会为实际开发节省时间.

    NSNumberFormatter可以用来处理NSString和NSNumber之间的转化,可以满足基本的数字形式的转化。下面话不多说了,来一起看看详细的介绍吧

    1:使用+ localizedStringFromNumber:numberStyle:本地化方法格式化NSNumber到NSString

    四舍五入到整数

     NSNumber *number = @(123423.5563);
     NSString *numStr1 = [NSNumberFormatter localizedStringFromNumber:number numberStyle:NSNumberFormatterNoStyle];
    // 123424

    货币数字形式

     NSNumber *number = @(12342323.5563);
     NSString *numStr1 = [NSNumberFormatter localizedStringFromNumber:number numberStyle:NSNumberFormatterDecimalStyle];
     // 12,342,323.556

    货币的形式,带本地化的货币符号

    NSNumber *number = @(12342323.5563);
     NSString *numStr1 = [NSNumberFormatter localizedStringFromNumber:number numberStyle:NSNumberFormatterCurrencyStyle];
    // ¥12,342,323.56

    百分数形式,并且四舍五入到百分比的整数部分

    NSNumber *number = @(12342323.5563);
    NSString *numStr1 = [NSNumberFormatter localizedStringFromNumber:number numberStyle:NSNumberFormatterPercentStyle];
    // 1,234,232,356%

    科学计数形式

    NSNumber *number = @(12342323.55665); NSString *numStr1 = [NSNumberFormatter localizedStringFromNumber:number numberStyle:NSNumberFormatterScientificStyle];
    // 1.234232355665E7

    本地化拼写形式

    NSNumber *number = @(12342323.55665);
    NSString *numStr1 = [NSNumberFormatter localizedStringFromNumber:number numberStyle:NSNumberFormatterSpellOutStyle];
    // 三十四万二千三百二十三点五五六六五

    序数形式

    NSNumber *number = @(12342323.55665);
    NSString *numStr1 = [NSNumberFormatter localizedStringFromNumber:number numberStyle:NSNumberFormatterOrdinalStyle];
    // 第1234,2324

    货币形式 显示ISO分配的货币符号

    NSNumber *number = @(12342323.55665);
    NSString *numStr1 = [NSNumberFormatter localizedStringFromNumber:number numberStyle:NSNumberFormatterCurrencyISOCodeStyle];
    // CNY12,342,323.56

    货币形式

    NSNumber *number = @(12342323.55665);
     NSString *numStr1 = [NSNumberFormatter localizedStringFromNumber:number numberStyle:NSNumberFormatterCurrencyPluralStyle];
    // 12,342,323.56人民币

    会计形式

    NSNumber *number = @(12342323.55665);
    NSString *numStr1 = [NSNumberFormatter localizedStringFromNumber:number numberStyle:NSNumberFormatterCurrencyAccountingStyle];
    // ¥12,342,323.56

    2:初始化NSNumberFormatter对象,使用- (NSNumber *)numberFromString:(NSString *)string;定制格式化NSNumber到NSString

    不指定任何样式(numStyle),默认(NSNumberFormatterNoStyle)四舍五入,其他的样式同以上1中所介绍的

     NSNumber *number = @(12342323.55665);
     NSNumberFormatter *formatter = [[NSNumberFormatter alloc]init];
    // 指定货币样式
     formatter.numberStyle = NSNumberFormatterDecimalStyle;
    // 自定义样式
     [formatter setPositiveFormat:@"###0.###"];
    // 数字之间的分隔符
     [formatter setDecimalSeparator:@":"];
     [formatter setCurrencyDecimalSeparator:@","];
    // 前缀符号
     formatter.positivePrefix = @"!";
    // 后缀符号
     formatter.positiveSuffix = @"元";
    // 间隙中添加的符号
     formatter.paddingCharacter = @"?";
    // 格式的宽度
     formatter.formatWidth = 15;
    // 最少展示两位小数
     formatter.minimumFractionDigits = 2;
    // 最多展示三位整数
     formatter.maximumIntegerDigits = 5;
     NSString *numStr = [formatter stringFromNumber:number];
    // ??????!323:557元

    百分比样式展示

    NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
    [numberFormatter setPositiveFormat:@"0.00%;0.00%;-0.00%"];
    NSLog(@"%@", [numberFormatter stringFromNumber:@4.0]);
    // Output: "400.00%".
    
    // 本地化
    NSNumberFormatter *numberFormatter = [[NSNumberFormatter alloc] init];
    [numberFormatter setNumberStyle:NSNumberFormatterPercentStyle];
     
    NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];[numberFormatter setLocale:usLocale];
    NSLog(@"en_US: %@", [numberFormatter stringFromNumber:@4.0]);
    // Output: "en_US: 400%".
     
    NSLocale *faLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"fa_IR"];
    [numberFormatter setLocale:faLocale];
    NSLog(@"fa_IR: %@", [numberFormatter stringFromNumber:@4.0]);
    // Output: "fa_IR: ٪۴۰۰."

    总结

    以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对CAD之家的支持。

    为您推荐

    发表评论

    联系我们

    联系我们

    在线咨询: QQ交谈

    地址:中国·贵州·贵阳 友情链接QQ:1034559333 本站QQ群:123733639
    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部

    关于本站 || 版权声明 || 免责条款 || 隐私条款 || 平码三中山论坛 || ||

    Copyright??2018 平码三中山论坛 All Rights Reserved·黔ICP备15000265号-2

  • 经营者要想“我心换你心”,就要未雨绸缪,让不诚信的诱惑少一点,如此才能在市场中生存下来。反过来说,承担不起亏损就关门歇业,是否也是一种不诚信呢? 2019-09-14
  • 上海市陆家嘴:打造社区多元治理“共同体” 2019-09-14
  • 2017最具体育活力城市排行榜 2019-09-14
  • 李克勤献唱央视“世界杯主题歌” 2018国语专辑筹备中李克勤 世界杯 2019-09-08
  • 回复@看着就想笑:难道公有制社会主义就不能生存发展吗?事实上公有制会生存发展的更好! 2019-09-03
  • 陵川县全力推进乡村振兴战略 2019-09-01
  • 周国平:男女之爱已经很强烈了,但亲子之爱更强烈 2019-09-01
  • 出租广州市荔湾区芳村大道东169号 2019-08-29
  • (原创)取消“份子钱”是出租车改革必须迈出的一步 2019-08-21
  • Facebook公关掌门离职 是应对隐私丑闻干将 2019-08-20
  • 你这纯粹是胡说八道!农民的宅基地,需要交钱才能使用吗?你敢推行这样的政策吗?你也只敢推行对工人的住宅地,要交钱才能使用!这样合理吗?那些交不起房钱的人,难道应该 2019-08-13
  • 西部网(陕西新闻网)硬科技频道 2019-08-13
  • 新华时评:成果不易,更需诚意与信任呵护 2019-08-09
  • 好好的书报亭放没放样,周围堆得一塌糊涂乱七八糟,真正的主人都搓麻将去了。再现代化造型在金钱至上的社会不可能再有相应的雅知气了。 2019-08-09
  • 2018海创会带你领略黑科技产品 2019-08-05
  • 北京pk结果查询 云南时时平台 天天彩票集团APP 双色球最近200期走势图 小鹿多彩开奖网 破解游戏盒子 31选7选号技巧 广西快乐双彩中奖查询 网上玩时时彩赚钱是真是假 老版电子游戏都有哪些