我正在尝试稍微优化我的代码,我正在查看这部分,我将输入价格保存到我的Core Data
实体中,我只是觉得它是错误的/效率低下。
NSNumberFormatter *priceFormatter = [[NSNumberFormatter alloc] init];
[priceFormatter setNumberStyle:NSNumberFormatterDecimalStyle];
myEntity.price = (NSDecimalNumber *)[priceFormatter numberFromString:self.priceField.text];
实际上,我认为我在这里所做的是创建一个NSNumberFormatter
具有十进制样式的(显然价格需要,文本字段可能输入 2 而不是 2.00,因此在某种程度上是必要的)然后使用它NSNumberFormatter
来放置值从文本字段到NSDecimalNumber
通过演员表。我想在表单 2.00 中输入 2 的原因是为了避免我在加载实体并在应用程序中显示它时这样做。此外,文本字段调节文本字段,使其不能超过小数点后 2 位等,因此我们不必担心这一点。
这段代码有效吗?有没有更好的方法来做到这一点?这甚至有必要吗?