如何计算iOS中的浮点数后的位数? [英] How to calculate number of digits after floating point in iOS?
本文介绍了如何计算iOS中的浮点数后的位数?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
例如:
- 如何计算iOS中浮点数的位数? >
- 3.105应该返回3
- 3.0应该返回0
- 2.2应该返回1
更新:
我们还需要添加以下示例。因为我想知道小数部分的位数。
解决方案
我使用的是以下内容:
NSString * priorityString = [[NSNumber numberWithFloat:self.priority] stringValue];
NSRange range = [priorityString rangeOfString:@。];
int数字;
if(range.location!= NSNotFound){
priorityString = [priorityString substringFromIndex:range.location + 1];
digits = [priorityString length];
} else {
range = [priorityString rangeOfString:@e-];
if(range.location!= NSNotFound){
priorityString = [priorityString substringFromIndex:range.location + 2];
digits = [priorityString intValue];
} else {
digits = 0;
}
}
How can I calculate the number of digits after the floating point in iOS?
For example:
- 3.105 should return 3
- 3.0 should return 0
- 2.2 should return 1
Update: Also we need to add the following example. As I want to know number of digits in the fraction part.
- 1e-1 should return 1
解决方案
What I used is the following:
NSString *priorityString = [[NSNumber numberWithFloat:self.priority] stringValue];
NSRange range = [priorityString rangeOfString:@"."];
int digits;
if (range.location != NSNotFound) {
priorityString = [priorityString substringFromIndex:range.location + 1];
digits = [priorityString length];
} else {
range = [priorityString rangeOfString:@"e-"];
if (range.location != NSNotFound) {
priorityString = [priorityString substringFromIndex:range.location + 2];
digits = [priorityString intValue];
} else {
digits = 0;
}
}
这篇关于如何计算iOS中的浮点数后的位数?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文