http://blog.sina.com.cn/s/blog_71715bf801017nyw.html

方法一:

-(NSString *)notRounding:(float)price afterPoint:(int)position{

NSDecimalNumberHandler* roundingBehavior = [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode:NSRoundDown scale:position raiseOnExactness:NO raiseOnOverflow:NO raiseOnUnderflow:NO raiseOnDivideByZero:NO];

NSDecimalNumber *ouncesDecimal;

NSDecimalNumber *roundedOunces;

ouncesDecimal = [[NSDecimalNumber alloc] initWithFloat:price];

roundedOunces = [ouncesDecimal decimalNumberByRoundingAccordingToBehavior:roundingBehavior];

[ouncesDecimal release];

return [NSString stringWithFormat:@"%@",roundedOunces];

}

介绍一下参数:

price:需要处理的数字,

position:保留小数点第几位,

然后调用

float s =0.126;

NSString *sv = [self notRounding:s afterPoint:2];

NSLog(@"sv = %@",sv);

输出结果为:sv = 0.12

接下来介绍NSDecimalNumberHandler初始化时的关键参数:decimalNumberHandlerWithRoundingMode:NSRoundDown,

NSRoundDown代表的就是 只舍不入。

scale的参数position代表保留小数点后几位。

如果只入不舍怎么办,比如,float 0.162 想要得到0.17该怎么做?,在开发文档上有这样一个表,是按照保留小数点后一位处理的。相信大家一看就明白了:

方法二:

1、round(12345.6789) 结果为:12346

2、round(12345.6789*100)/100 结果为:12345.68

第二个是我要的结果,但是我不明白这么个简单的四舍五入要搞的这么复杂,应该有更好的吧,我记得在其他语言里用:round(12345.6789,2) 就可以实现四舍五入到两位小数。

转载于:https://www.cnblogs.com/xuejinhui/p/4552897.html

IOS开发之----四舍五入问题相关推荐

  1. iOS开发基础知识--碎片27

     iOS开发基础知识--碎片27 1:iOS中的round/ceil/floorf extern float ceilf(float); extern double ceil(double); ext ...

  2. IOS开发基础知识--碎片14

    1:ZIP文件压缩跟解压,使用ZipArchive 创建/添加一个zip包ZipArchive* zipFile = [[ZipArchive alloc] init];//次数得zipfilenam ...

  3. iOS开发中常用的方法

    iOS开发中常用的方法 系统弹窗: 过期方法: UIAlertView *alertView = [[UIAlertView alloc]initWithTitle:@"确认报价" ...

  4. 【IOS开发进阶系列】动画专题

    1 CALayer IOS SDK详解之CALayer(一) http://doc.okbase.net/Hello_Hwc/archive/123447.html 1.1 基本概念 1.1.1 CA ...

  5. iOS开发宝典:String用法大全

    本文转载至 http://mobile.51cto.com/iphone-395171.htm 新手们还在等什么?这是一本属于你的iOS开发"字典",在这里你可以查到字符串.数组. ...

  6. iOS开发中 经常遇到的坑,看我就够了! 韩俊强的博客

    从事iOS开发有些年月了,从最开始的磕磕绊绊,不知所措,到现在的遇到困难都能快速做出最佳方案处理,中间经历了不可或缺的痛苦.在项目开发中,本人有用印象笔记记录的习惯,所以很多重复出现的坑,很快迎刃而解 ...

  7. iOS开发中的数学函数

    在iOS开发当中...我们往往会涉及到一些算法...为了节省一些时间...让APP很快地被开发出来...我们需要对各类函数有一定的了解...接下来...我把部分常用函数分享出来...希望能帮到大家.. ...

  8. IOS开发UISearchBar失去第一响应者身份后,取消按钮不执行点击事件的问题

    在iOS开发中,使用UISearchBar的时候,当搜索框失去焦点的时候,取消按钮是默认不能点击的,如图按钮的颜色是灰色的:    这是因为此时取消按钮的enabled属性被设置为NO了,那么当我们需 ...

  9. iOS开发UI篇—transframe属性(形变)

    iOS开发UI篇-transframe属性(形变) 1. transform属性 在OC中,通过transform属性可以修改对象的平移.缩放比例和旋转角度 常用的创建transform结构体方法分两 ...

  10. 【ios开发/Xcode】使用UITableView完成学生信息及成绩的显示

    [ios开发/Xcode]使用UITableView完成学生信息及成绩的显示 设计思想 实现效果 源代码 设计思想 首先创建所有页面的故事版,包括,登录.注册与成绩页面 接着设置故事版的关联代码,如下 ...

最新文章

  1. Caused by: java.lang.NoClassDefFoundError: org/objectweb/asm/Type
  2. 关于使用Carbide编译及配置的一点注意事项
  3. 7个有用的JavaScript技巧
  4. javascript 变量及作用域(栈、堆、块级作用域、执行环境)详细篇
  5. 悟空 mobile.php,悟空CRM无需任何权限的SQL注入漏洞2(ThinkPHP特性)
  6. 邮件服务端口 port 25、109、110、143、465、995、993
  7. IOS UIKit基础控件的使用
  8. 1-15 Burpsuite Sequencer介绍
  9. 机器人学回炉重造(1-2):各种典型机械臂的正运动学建模(标准D-H法)
  10. android下怎样伪装mac,Android刷成iOS?史上最强苹果伪装教程
  11. python二进制和图片转换
  12. vim autoformat php,Linux Vim代码格式化/美化插件vim-autoformat安装
  13. 华为P10手机有计算机功能吗,手机教程知识:华为P10支持NFC功能吗 华为P10新功能介绍...
  14. QT报错:Gtk-Message:Failed to load module “gail“
  15. 简介公开密钥算法和证书生成
  16. Win7下基于Anaconda安装TensorFlow
  17. Python处理mat文件的三种方式小结
  18.  传智播客开课的第三天
  19. html的基本模板结构图
  20. LTE-A载波聚合技术(7)---PDCCH monitoring、连接、盲检

热门文章

  1. C# Json文件读取
  2. 为什么使用php工厂模式,PHP 工厂模式使用方法
  3. 能识别nvme的pe启动_学用系列|Mathpix,送给理科老师们的公式识别神器
  4. pmp项目变更的流程图_PMP流程图
  5. MyBatis之使用XML配置SQL映射(二)CRUD映射配置
  6. jQuery事件相关方法
  7. 几个好用的makefile 几乎可以不用修改
  8. Netty源码分析第8章(高性能工具类FastThreadLocal和Recycler)----第7节: 获取异线程释放的对象...
  9. HTML5定位功能,实现在百度地图上定位
  10. tableView 三级展开 嵌入collocationView