【发布时间】:2011-05-26 09:50:46
【问题描述】:
我想在游戏中显示毫秒计时器值。
String.format 在 Android 上非常慢,所以我不能使用它。我目前使用
这个:
long elapsedMillis = ...; //elapsed milliseconds
int whole = (int)(elapsedMillis / 1000);
int fraction = (int)(elapsedMillis % 1000);
StringBuilder sb = new StringBuilder("TIME:");
sb.append(whole);
sb.append('.');
if(fraction < 10)
sb.append("00");
else if(fraction < 100)
sb.append("0");
sb.append(fraction);
g.drawText(sb.toString(), ...);
但我认为它可以做得更快。你能指导我正确的方向吗?谢谢
【问题讨论】:
-
final可能是变量。否则我无法想象比你现在拥有的更多。这是任务关键代码吗?您是否考虑将其放入 NDK 函数中? -
使用静态 StringBuilder 和 final 变量,以及 TIME: pre-drawn。
标签: android string formatting string-formatting