Objective c 数字和十进制值
我有一个像这样的NSNumber,例如=1978,我想把它转换成:1K9,第二个例子:35700转换成:35K7(其中“k”是公里,“M”是米,我怎么做 谢谢 注意:我没有带mac电脑,如果Objective c 数字和十进制值,objective-c,Objective C,我有一个像这样的NSNumber,例如=1978,我想把它转换成:1K9,第二个例子:35700转换成:35K7(其中“k”是公里,“M”是米,我怎么做 谢谢 注意:我没有带mac电脑,如果[temp stringValue]出现任何错误,请通知我 注意:我没有带mac,如果[temp stringValue]出现任何错误,请通知我。编写自己的NSNumberFormatter子类。在这个子类中,您可以实现计算逻辑 逻辑可能是这样的 将值除以千,然后加上“k” 如果你想得到第一个数字的百分之三十
[temp stringValue]
出现任何错误,请通知我
注意:我没有带mac,如果
[temp stringValue]
出现任何错误,请通知我。编写自己的NSNumberFormatter子类。在这个子类中,您可以实现计算逻辑
逻辑可能是这样的
编写自己的NSNumberFormatter子类。在这个子类中,您可以实现计算逻辑 逻辑可能是这样的
NSNumber *initialNumber = [NSNumber numberWithInt:35700];
NSString *resultString = [NSString stringWithFormat:@"%iK%i", floor(initialNumber / 1000), floor((initialNumber % 1000) / 100)];
以下是方法:
NSNumber *initialNumber = [NSNumber numberWithInt:35700];
NSString *resultString = [NSString stringWithFormat:@"%iK%i", floor(initialNumber / 1000), floor((initialNumber % 1000) / 100)];
基本上,您可以使用内部数字数据。 假设您正在处理一个基于仪表的值,您可能需要以下内容:
NSNumber *sourceValue = ... // your NSNumber value from any source
int meters = sourceValue.intValue;
int km = floor(meters / 1000); // only your kilometers
int sub_km = meters % 1000; // only the part behind the kilometers
int first_sub_km = floor(sum_km / 100); // the first digit of the subrange
NSString *readable = [NSString stringWithFormat:@"%iK%i", km, first_sub_km];
首先,你把米分成1000米。
然后您只需将其格式化,中间有一个K。基本上您可以处理内部数字数据。 假设您正在处理一个基于仪表的值,您可能需要以下内容:
NSNumber *sourceValue = ... // your NSNumber value from any source
int meters = sourceValue.intValue;
int km = floor(meters / 1000); // only your kilometers
int sub_km = meters % 1000; // only the part behind the kilometers
int first_sub_km = floor(sum_km / 100); // the first digit of the subrange
NSString *readable = [NSString stringWithFormat:@"%iK%i", km, first_sub_km];
首先,你把米分成1000米。
然后你只需将其格式化,中间有一个K。这不是确切的答案,你应该用同样的方法将其余的数字添加到字符串中。这不是确切的答案,你应该用同样的方法将其余的数字添加到字符串中。你在示例中在哪里写了“M”?示例我有:1790M(米),我想把它转换成这样的公里数:1K7,另一个例子:34567M我想:34K5谢谢你的例子里有没有写“M”呢?例子我有:1790M(米),我想把它转换成这样的公里数:1K7,另一个例子:34567M我想:34K5谢谢