在转换应用程序中构建数据

Structuring data in a conversion app

在应用程序中,我需要在公制、英制和美制之间转换值,例如公斤到石头 + 磅(英国)到磅(美国)。如何最好地存储用户输入的数据?

将所有输入的值转换为例如指标并保存为浮点数,或者将用户输入的数据保存为文字字符串并在每次应用程序启动时解释?

maths/equations 等都很好,更重要的是要知道在数据库中存储可以不同方式 的值的最有效结构是什么?

这真的取决于你需要什么样的精度。将值存储为 String 可能是安全的,但效率极低。对于简单的 1 到 1 值转换,它可能足够有效。对于转换数千个值,它可能不会。

我会选择表示用户能够手动输入的最复杂值的标量类型。从这些原始值中推导计算以避免丢失复杂性。

请注意:由于您处理的是真实世界的值(我假设),如果您要使用标量值类型,请放弃符号并使用无符号变体。

这是我使用的方法,创建一个名为 WeightObject 的 NSObject,它有 2 个属性

1-用户输入的值(例如3)

2- 用户使用的单位示例:(KiloGrams/pounds 等..)。

最后保存对象。这样一来,您就可以完全按照用户输入的方式保存记录,并使对象内部的方法成为 return KG 或 punds 等中的值...

所以稍后你说 float x = myWeightObject.KilosValue