zoukankan      html  css  js  c++  java
  • Objective-C中NSString与int和float的相互转换

    NSString *tempA = @"123";

    NSString *tempB = @"456";

    1,字符串拼接

     NSString *newString = [NSString stringWithFormat:@"%@%@",tempA,tempB];

    2,字符转int

    int intString = [newString intValue];

    3,int转字符

    NSString *stringInt = [NSString stringWithFormat:@"%d",intString];

    4,字符转float

     float floatString = [newString floatValue];

    5,float转字符

    NSString *stringFloat = [NSString stringWithFormat:@"%f",intString];

    四舍五入问题

    -(NSString *)notRounding:(float)price afterPoint:(int)position{

        NSDecimalNumberHandler* roundingBehavior = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundDown scale:position raiseOnExactness:NO raiseOnOverflow:NO raiseOnUnderflow:NO raiseOnDivideByZero:NO];

        NSDecimalNumber *ouncesDecimal;

        NSDecimalNumber *roundedOunces;

        

        ouncesDecimal = [[NSDecimalNumber alloc] initWithFloat:price];

        roundedOunces = [ouncesDecimal decimalNumberByRoundingAccordingToBehavior:roundingBehavior];

        [ouncesDecimal release];

        return [NSString stringWithFormat:@"%@",roundedOunces];

    }

    介绍一下参数:

    price:需要处理的数字,

    position:保留小数点第几位,

    然后调用

        float s =0.126;

        NSString *sb = [self notRounding:s afterPoint:2];

        NSLog(@"sb = %@",sb);

    输出结果为:sb = 0.12

    接下来介绍NSDecimalNumberHandler初始化时的关键参数:decimalNumberHandlerWithRoundingMode:NSRoundDown,

    NSRoundDown代表的就是 只舍不入。

    scale的参数position代表保留小数点后几位。

  • 相关阅读:
    python面向对象编程(1)——基本概念,术语,self,构造器
    django-中间件
    集合
    深入字典
    django使用小贴士
    自动化发送微信
    django-模板继承
    SMTP发送邮件
    git的使用
    django-csrf攻击
  • 原文地址:https://www.cnblogs.com/davidgu/p/5304981.html
Copyright © 2011-2022 走看看