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代表保留小数点后几位。

  • 相关阅读:
    android自定义View之NotePad出鞘记
    一个电商项目的Web服务化改造
    一个电商项目的Web服务化改造
    POJ 2886 Who Gets the Most Candies?
    POJ 2392 Space Elevator
    POJ 1276 Cash Machine
    POJ 2063 Investment
    CodeForces 159c String Manipulation 1.0
    Gym
    FZU 1921 栀子花开
  • 原文地址:https://www.cnblogs.com/davidgu/p/5304981.html
Copyright © 2011-2022 走看看