【发布时间】:2013-04-08 06:39:44
【问题描述】:
我有一个名为 Song 的自定义类。此类的每个实例都需要一个表示其持续时间的属性,并且我希望该持续时间采用正常的“歌曲”格式,例如 HH:MM:SS。 Song 实例将从 JSON 网络调用接收数据,例如持续时间,并且它们也可能通过 Core Data 或其他方法进行持久化。
存储此持续时间的选项有哪些?我是否需要存储它有一个类似的字符串
self.duration = @"0:2:14";
或
self.duration = @"0.2.14";
将其存储为 NSDate 的 NSNumber 会更好吗?如果是这样,我如何将其转换为这些类型?如果我需要将其存储为字符串,有没有比拆分冒号更好的方法将其转换为数字/时间间隔?
【问题讨论】:
-
NSNumber或NSDate都没有一些特定的属性行为。在您的情况下,您只需要存储值以将其显示为05hours:23minutes:04seconds即05:23:04这些是固定值,您需要将其作为字符串,因此将它们存储为字符串。也将它存储为字符串,无论你如何使用,任何一个都可以。 -
将其存储为表示秒数的整数。如果需求发生变化,这将提供轻松更改格式的灵活性。
-
@AnoopVaidya
specific properties behaviours是什么意思? -
NSNumber 带有两位小数 (2.4.5) 或 (d:f:e) 我想看起来很尴尬,并且 nsdate 存储从 gmt 1jan1970 开始的时间间隔。所以你所有的歌曲都需要基于 1970 年。你真的需要那个吗/
标签: ios objective-c date model nsdate