RLH*_*RLH 1 cocoa-touch objective-c string-formatting nsstring
我有一个包含各种类型数值的类.在这个类中,我有几个辅助方法,用于输出描述符文本以便在我的应用程序中显示.
此描述符文本应始终显示为整数或浮点数,具体取决于特定实例的定义.
该类有一个属性,DecimalWidth用于确定要显示的小数位数.我需要帮助编写一行显示数值的代码,但是具有固定的小数位数(0是可能的,在这种情况下,该值应显示为整数.)
我知道我可以返回一个值,[NSString stringWithFormat:@"%.02f", self.Value]但我的问题是我需要将格式字符串中的'2'替换为值DecimalWidth.
我能想出解决这个问题的几种方法.我可以将一个字符串连接在一起,这是输出字符串行的格式字符串.或者,我可以在格式字符串中创建格式字符串.
这些解决方案听起来很可怕,看起来效率很低,但也许这些是我拥有的最佳选择.
是否有一种优雅的方法来构造动态格式化字符串,其中输出是固定的十进制宽度数字但指定的十进制宽度是动态的?
这对我来说听起来并不可笑或效率低下.
[NSString stringWithFormat:[NSString stringWithFormat:@"%%.%df", DecimalWidth], self.Value]
Run Code Online (Sandbox Code Playgroud)
事实上我觉得它很优雅.
| 归档时间: |
|
| 查看次数: |
694 次 |
| 最近记录: |