美文网首页
NSDecimalNumber使用小结

NSDecimalNumber使用小结

作者: Baby小猪 | 来源:发表于2016-08-25 17:54 被阅读262次

    NSDecimalNumber使用小结

    1. 小数点后多余0的处理

    - (void)test1{
        /**
         *  要求:输出0.1
         */
        NSString * str = @"0.1000";
        NSDecimalNumber * result = [NSDecimalNumber decimalNumberWithString:str];
    }
    

    2. 小数点后n位处理

    2.1四舍五入
    - (void)test2{
      /**
       *  要求:a=0.127  b=0.13
       */
        NSDecimalNumberHandler * handler = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundPlain scale:2 raiseOnExactness:NO raiseOnOverflow:NO raiseOnUnderflow:NO raiseOnDivideByZero:NO];
        NSDecimalNumber * a = [NSDecimalNumber decimalNumberWithString:@"0.127"];
        NSDecimalNumber * b = [a decimalNumberByRoundingAccordingToBehavior:handler];
        NSLog(@"%@,%@",a,b);
    }
    
    
    2.2截取

    将RoundMode改为NSRoundDown。

    3.非空判断

    - (void)test4{
        NSString * str = nil;
        NSDecimalNumber * n = [NSDecimalNumber decimalNumberWithString:str];
        NSDecimalNumber * nan = [NSDecimalNumber notANumber];
        if (n == nan) {
            NSLog(@"数据为空:NaN");
        }
    }
    

    当服务器返回的NSNumber类型的数据为空时,可通过上述方法进行判断。

    相关文章

      网友评论

          本文标题:NSDecimalNumber使用小结

          本文链接:https://www.haomeiwen.com/subject/yzsasttx.html