本文介绍了返回1从1,2从2,...,11从11,的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
是否有一个Objective-c函数从 NSUInteger
返回 NSString *
,即:
Is there a Objective-c function to return a NSString *
from a NSUInteger
, i.e.:
- 1 - >第一
- 2 - >第二
- 。 ..
- 10 - > 10th
- 21 - > 21st
- ...
- 31 - > 31st
- 1 -> 1st
- 2 -> 2nd
- ...
- 10 -> 10th
- 21 -> 21st
- ...
- 31 -> 31st
$ b
推荐答案
- (NSString *)stringFromInt:(int)num {
NSString stringAddition;
if (num%100 >= 11 && num%100 <= 13) {
stringAddition = @"th";
}
else {
switch (num % 10) {
case 1: stringAddition = @"st"; break;
case 2: stringAddition = @"nd"; break;
case 3: stringAddition = @"rd"; break;
default: stringAddition = @"th"; break;
}
}
return [NSString stringWithFormat:@"%i%@", num, stringAddition];
}
编辑:
修正了11,12,13期。
EDIT:
Fixed the 11, 12, 13 issue.
这篇关于返回1从1,2从2,...,11从11,的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!