好的,所以我现在正在编写一个计算器应用程序。到目前为止,我在小数方面运气不佳(我最近的方法效果不佳)。
-(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(这是正确的)。
实现这一目标的最佳方法是什么?