2

好的,所以我现在正在编写一个计算器应用程序。到目前为止,我在小数方面运气不佳(我最近的方法效果不佳)。

-(void) DecimalAdded
{
    NSNumberFormatter *formatter = [[NSNumberFormatter  alloc] init]; 
    [formatter  setNumberStyle:NSNumberFormatterDecimalStyle];
    [formatter  setAlwaysShowsDecimalSeparator:YES];
    [formatter setGeneratesDecimalNumbers:YES];
    [formatter setDecimalSeparator:@"."];

    //first convert the float value of CN into NSnumber

    NSNumber  *nextstepNumFromCNF= [NSNumber numberWithFloat:currentNumber];

    //now we have to convert that number into a string

    NSString *CNconverted = [formatter stringFromNumber:nextstepNumFromCNF];




    NSNumber *CNdecmAddedAndReadyForPars = [formatter numberFromString:CNconverted];

    currentNumber = currentNumber*10 + [CNdecmAddedAndReadyForPars floatValue];

    CalculatorScreen = [NSMutableString stringWithFormat: @"%@", CNconverted];

我可以将字符串附加到计算器屏幕我可以说数字是 1,我看到“1”。在我打字的时候。但是,这通常在浮点转换期间转换为 1(这是正确的)。

实现这一目标的最佳方法是什么?

4

0 回答 0