字符串处理的一些总结
2014-08-11 15:53
204 查看
工作中遇到了要将字符串转换成long型数据的问题,一开始如果只是一个整形的字符串,我用Long.valueof(String s)就可以了,最后数据出现了12.23之类的数据,这时就要转换成Double或者float类型的数据了。
还有就是遇到一个需要将字符串拆分的问题,比如12.25KB/s 我要将他存储到数据库当中,数据库当中使用Double数据,因为以后要运用到图表当中去,所以必须使用Double而不能使用String类型将KB/s存储进去,这时就要用到一个字符串拆分方法,并且由于有KB,有MB最终存储到数据库的时候统一换算成MB, 并且保留三位小数,方法如下
返回的还是String,后面再次利用Double.valueOf()方法就可以转换过来了。
具体这几个方法比如valueOf还有保留小数的DecimalFormat是怎么实现的,都是可以看看源码的。
Method One:
(double)(Math.round(result_value*10000)/10000.0)
这样计算可以保留result_value小数点后四位,以此类推,1后面几个零就是保留小数点后几位数.
Method two:
import java.text.DecimalFormat;
DecimalFormat df = new DecimalFormat("###.00");
System.out.println(df.format(double_value));
这样就是保留小数点后两位小数,如果想保留三位,则为
DecimalFormat df = new DecimalFormat("###.000");
Math.round()方法就是四舍五入的取整方法
还有就是遇到一个需要将字符串拆分的问题,比如12.25KB/s 我要将他存储到数据库当中,数据库当中使用Double数据,因为以后要运用到图表当中去,所以必须使用Double而不能使用String类型将KB/s存储进去,这时就要用到一个字符串拆分方法,并且由于有KB,有MB最终存储到数据库的时候统一换算成MB, 并且保留三位小数,方法如下
/** * 全部解析为以MB为单位 * * @param rateFlow 要解析的网络流速(12.54KB/s ,1.2MB/s) * @return 返回String类型的数据(0.0125 ,1.2000) */ public String parseRateFlow(String rateFlow) { int i = 0; int scale = 1;// 这里写成0,出了错误,debug解决 char character = rateFlow.charAt(i); while ((character >= '0' && character <= '9') || character == '.') { i++; character = rateFlow.charAt(i); } if (rateFlow.charAt(i + 1) == 'K') { scale = 1024; } String resultStr = rateFlow.substring(0, i); DecimalFormat df2 = new DecimalFormat("###.000"); return df2.format(Double.valueOf(resultStr) / scale); }
返回的还是String,后面再次利用Double.valueOf()方法就可以转换过来了。
具体这几个方法比如valueOf还有保留小数的DecimalFormat是怎么实现的,都是可以看看源码的。
Method One:
(double)(Math.round(result_value*10000)/10000.0)
这样计算可以保留result_value小数点后四位,以此类推,1后面几个零就是保留小数点后几位数.
Method two:
import java.text.DecimalFormat;
DecimalFormat df = new DecimalFormat("###.00");
System.out.println(df.format(double_value));
这样就是保留小数点后两位小数,如果想保留三位,则为
DecimalFormat df = new DecimalFormat("###.000");
Math.round()方法就是四舍五入的取整方法
相关文章推荐
- 一些项目中字符串的处理总结
- [转贴]字符串数组的一些处理方法总结
- 关于字符串处理的一些总结
- 一些常用的字符串处理函数总结memcpy、memmove、memset、memcmp、memchr等
- 字符串数组的一些处理方法总结
- 字符串处理一些函数的总结
- c# 中的字符串处理总结
- C#中字符串处理的一些自定义方法
- 关于项目中异常处理的一些总结
- C字符串处理常用函数总结
- 总结JSTL中字符串处理函数
- 关于symbian按键事件的一些总结(2)----------按键事件的处理
- 【J2SE】Java截取字符串的一些常用处理
- 关于项目中异常处理的一些总结
- 编译预处理一些知识简单总结
- 字符串处理的一些常用函数
- 字符串的一些处理方法
- c#中一些常用字符串处理
- 对一些时间处理的总结
- C#中字符串处理的一些自定义方法