gpt4 book ai didi

ios - 小数位不能用逗号做数学运算。需要点

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:45:19 25 4
gpt4 key购买 nike

我的应用程序包含三个 View Controller 。首先是带有三个 UITextField 的 UIViewController,用户可以在其中输入一些数字。这些数字作为字符串属性存储到我的 CoreData 实体中。

第二个是 UITableView,我在其中将 CoreData 中存储的数据显示为新单元格。第三个是细节 UIViewController,我向用户展示了他之前插入的所有数字。问题是当我在 textField 小数位上设置时,用户有数字和逗号,但我的函数需要带点的数字来进行 double 计算。使用逗号我无法将数学函数设为 [.....] * [...] = .... 因为它不起作用。

知道我该如何解决吗?我可以简单地将逗号更改为点吗?

我有这个代码:

 NSNumberFormatter*nf = [[NSNumberFormatter alloc]init];
[nf setNumberStyle:NSNumberFormatterDecimalStyle];

double result = [myString doubleValue] * [myOtherString doubleValue];

最佳答案

您希望十进制小键盘根据用户的区域设置为逗号或句点(点)。这样用户就可以输入他们习惯的值。为了使用值进行数学运算,您需要使用 NSNumberFormatter 将输入的字符串转换为 double 值。一旦你这样做,你的数学公式就会起作用。切勿使用 doubleValuefloatValueNSString 转换为 doublefloat,如果该字符串由用户输入。始终使用 NSNumberFormatter 来正确处理用户的语言环境。

根据添加到问题的代码进行更新。

您不使用数字格式化程序。你正在做我说过不要做的事情。将您的代码更改为:

double firstValue = [[nf numberFromString:myString] doubleValue];
double secondValue = [[nf numberFromString:myOtherString] doubleValue];
double result = firstValue * secondValue;

关于ios - 小数位不能用逗号做数学运算。需要点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19068960/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com