帮助格式化数字,objective-c



我有以下内容,

int intMilliseconds = rawSplit % 1000;

返回我输入的时间的剩余毫秒数,但是在极少数情况下它返回三个数字(###)而不是通常的两个数字(##)。

我怎么能让它总是返回两个数字?(# #)

听起来您想要做的是将毫秒缩短到百分之一秒。你可以这样做:

int hundredths= (int)( (float)intMilliseconds / 10.0f ) * 10;

在这里,例如,934或939毫秒将显示为百分之93秒。

顺便说一下,你的措辞有点奇怪-真的没有办法将毫秒数(从0到999)"格式化"为两位数。因为你的格式是xx:xx:xx,我假设你的意思是你想显示百分之一秒

rawSplit是介于(0,099)和(0,999)之间的数字时,它将是一个三位数。模算子%在除以右操作数后得到余数。如果执行1064 % 1000,结果为64。如果执行1548 % 1000,结果为548

你可以改变你得到的信息——对100取模,例如:1064 % 100 -> 641548 % 100 -> 48——但是你不能让这个表达式一直"返回"两位数字。

摘自我下面的评论:

我想你可以用"厘秒";只需将毫秒数除以10,然后去掉小数部分。

最新更新