你好,
我正在构建一个下载玩家排名并显示它们的应用程序。比如说,你是所有玩家中的第 3 名,我插入了一个条件,将其显示为第 3 名,而不是第 3 名,我对第 2 名和第 1 名做了同样的事情。但是,当达到更高的排名时,例如第 2883 位,它将显示第 2883 位(原因很明显)
我的问题是,我怎样才能将号码重新格式化为 XXX1st、XXX2nd、XXX3rd 等?
为了说明我的意思,这就是我如何格式化我的数字以添加“rd”,如果它是 3
if ([[container stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] isEqualToString:@"3"])
{
NSString*badge = [NSString stringWithFormat:@"%@rd",[container stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]];
NSString*scoreText = [NSString stringWithFormat:@"ROC Server Rank: %@rd",[container stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]];
profile.badgeValue = badge;
rank.text = scoreText;
}
我不能对最多 2000 的每个数字都执行此操作(总共有 2000 个等级) - 我该怎么做才能解决这个问题?