/*
* 处理一个数字加小数点的字符串,前面无0,保留两位。网上有循环截取的方法,如果数字过长,浪费内存,这个方法在优化内存的基础上设计的。
*/
-(NSString*)getTheCorrectNum:(NSString*)tempString
{
//先判断第一位是不是 . ,是 . 补0
if ([tempString hasPrefix:@"."]) {
tempString = [NSString stringWithFormat:@"0%@",tempString];
}
//计算截取的长度
NSUInteger endLength = tempString.length;
//判断字符串是否包含 .
if ([tempString containsString:@"."]) {
//取得 . 的位置
NSRange pointRange = [tempString rangeOfString:@"."];
NSLog(@"%lu",pointRange.location);
//判断 . 后面有几位
NSUInteger f = tempString.length - - pointRange.location;
//如果大于2位就截取字符串保留两位,如果小于两位,直接截取
if (f > ) {
endLength = pointRange.location + ;
}
}
//先将tempString转换成char型数组
NSUInteger start = ;
const char *tempChar = [tempString UTF8String];
//遍历,去除取得第一位不是0的位置
for (int i = ; i < tempString.length; i++) {
if (tempChar[i] == '') {
start++;
}else {
break;
}
}
//如果第一个字母为 . start后退一位
if (tempChar[start] == '.') {
start--;
}
//根据最终的开始位置,计算长度,并截取
NSRange range = {start,endLength-start};
tempString = [tempString substringWithRange:range];
return tempString;
}

iOS返回一个前面没有0,小数点后保留两位的数字字符串的更多相关文章

  1. js验证input输入正整数 和 输入的金额小数点后保留两位(PC端键盘输入)

    // 验证开头不为零的正整数 WST.zhengZhengShuIn = function (className){ var rex = /^[1-9]{1}[0-9]*$/;//正整数 $(&quo ...

  2. EL表达式jsp页面double小数点后保留两位

    EL表达式jsp页面double小数点后保留两位,四舍五入 <fmt:formatNumber type="number" value="${member.logi ...

  3. 【js】小数点后保留两位小数

    小数点后保留两位小数 dicountPrice.toFixed(2)

  4. Money型字段小数点后保留两位小数

    asp.net直接显示Money型字段小数点后面将保留四位小数,而我们常见的格价显示一般是小数点后两位,如何实现这种效果呢,有如下几种方法: 1.直接型,通过ToString()函数直接格式话 例如把 ...

  5. 正则验证input输入,要求只能输入正数,小数点后保留两位。

    <input type="number" step="1" min="0" onkeyup="this.value= thi ...

  6. C# 小数点后保留两位小数,四舍五入的函数及使用方法

    1 Math.Round(45.367,2) //Returns 45.37 2 Math.Round(45.365,2) //Returns 45.36 C#中的Round()不是我们中国人理解的四 ...

  7. php小数点后取两位的三种实现方法

    php小数点后取两位的方法. 方法一.经常用到小数点后取几位,但不能进位的情况. 比如3.149569取小数点后两位,最后两位不能四舍五入.结果:3.14. 可以使用函数floor. 该函数是舍去取整 ...

  8. Java中String转换Double类型 Java小数点后留两位

    Java中String转换Double类型 double num1 = 0.0; String qq = "19.987"; num1 = Double.valueOf(qq.to ...

  9. js 让小数四舍五入保留两位小数的函数是?

    js 让小数四舍五入保留两位小数的函数是? 例子:data.relations[i].data[j].toFixed(2) toFixed(2)这个函数就是保留两位小数的作用

随机推荐

  1. 怎么使用CDR中排列对象功能

    通过将对象发送到其他对象的前面或者后面,可以更改图层或页面上对象的堆叠顺序,还可以将对象按堆叠顺序精确定位,并且可以反转多个对象的堆叠顺序.本教程将详解CorelDRAW中排列对象各按钮功能. 1. ...

  2. nginx 反向代理TCP mysql

    stream {upstream mysql { hash $remote_addr consistent; server 10.26.112.12:3306 max_fails=3 fail_tim ...

  3. C#连接操作mysql实例

    第三方组件:Mysql.Data.dll说明:去官方网站下载Mysql.Data.dll,然后在项目中添加该组件的引用,在代码页里输入using Mysql.Data.MysqlClient,我们就可 ...

  4. IIS性能相关的配置、命令

    IIS性能相关的配置.命令 应用程序池回收 不要使用缺省的“固定时间间隔(分钟)”:1740(即29小时),建议改为0 可以根据实际情况设置特定时间回收,比如凌晨4点 最大工作进程数 可以根据实际情况 ...

  5. split 转义

    问题:str.split("?");报错了 原因: .?*+!^$[]()\在正则里需要转义 转义需双反斜线.splt("\\+");

  6. nginx-502错误,老是提示busy.优化php-fpm如下

    [global]pid = /usr/local/php/var/run/php-fpm.piderror_log = /usr/local/php/var/log/php-fpm.loglog_le ...

  7. web页面如何播放amr的音频文件

    这个需求由来已久,公司的语音订单很多,每次客服都是从服务器down下语音来听.很不方便..于是我就上网扒拉看有么有什么web播放器能播放amr格式的音频文件,amr百度百科 总之找了很久.,,然后发现 ...

  8. JVM GC算法 CMS 详解(转)

    前言 CMS,全称Concurrent Low Pause Collector,是jdk1.4后期版本开始引入的新gc算法,在jdk5和jdk6中得到了进一步改进,它的主要适合场景是对响应时间的重要性 ...

  9. dependencies 和 devDependencies

    npm install node_module –save自动更新dependencies字段值 npm install node_module –save-dev自动更新devDependencie ...

  10. css相对定位+浮动实现元素位置互换

    1.设置元素透明度 opacity:0.5; // w3c filter:alpha(opacity=50); //IE 2 position:relative; float:left; 一起使用的效 ...