格式化数据保留两位小数,输入格式为 :xxx,xx,,,,x,,(x为浮点数)
/**
* 格式化字符串
*/
static String dataFormat(String data){
String formatedData = "";
// 浮点数正则表达式
Pattern pattern = Pattern.compile("^(-?\\d+)(\\.\\d+)?$");
if(data == null) return null;
else {
if(data.equals("")) formatedData = "";
else if(!data.contains(",")){
try {
formatedData += new BigDecimal(data).setScale(2, BigDecimal.ROUND_HALF_UP);
} catch (Exception e) {
// 排除数据错误的情况 比如“-” “null”类型的
formatedData += data;
}
} else{
while(data.length() != 0){
int position = data.indexOf(",");
if(data.indexOf(",") != -1){
String tempString = data.substring(0, position);
if(pattern.matcher(tempString).matches() ){
formatedData += new BigDecimal(tempString).setScale(2, BigDecimal.ROUND_HALF_UP);
formatedData += ",";
data = data.substring(position + 1);
}else if (tempString.equals("")) {
formatedData += ",";
data = data.substring(position + 1);
}else{
return "格式不正确";
}
}else{
// 最后一个值
formatedData += new BigDecimal(data).setScale(2, BigDecimal.ROUND_HALF_UP);
formatedData += ",";
data = "";
}
}
}
}
return formatedData;
}
格式化数据保留两位小数,输入格式为 :xxx,xx,,,,x,,(x为浮点数)的更多相关文章
- JS中格式化数据保留两位小数
问题:在JS中格式化数据保留两位小数的函数的多种方法 最好方法: 保留两位好像是这样吧 var a = 9.39393; alert(a.toFixed(2)); 说明: ...
- 问题记录——BigDecimal保留两位小数及格式化成百分比
1.函数总结 BigDecimal.setScale()方法用于格式化小数点 setScale(1)表示保留一位小数,默认用四舍五入方式 setScale(1,BigDecimal.ROUND_DOW ...
- js保留两位小数方法总结
js保留两位小数方法总结 最近在做结算系统,经常需要用到金额保留两位小数,刚开始我一直用的是Angular中的过滤器number |2,但是,这无法满足我的需求.问题是,当用户离开文本框时,我需要将用 ...
- JS小数位保留两位小数--toFixed()
parseInt,parseFloat,parseDouble在JS中是将值转换成相应的类型: 你必须要这样,才能实现: <script> alert(parseFloat ...
- javascript实现保留两位小数的多种方法
第一种方法:javascript实现保留两位小数一位自动补零代码实例:第一种方法介绍一下如何实现对数字保留两位小数效果,如果数字的原本小数位数不到两位,那么缺少的就自动补零,这个也是为了统一的效果,先 ...
- JS限制input输入的为数字并且有小数的时候最多保留两位小数
JS限制input用户输入的为数字并且有小数的时候最多保留两位小数,代码如下: html部分: <input type="number" onkeypress="r ...
- ToString()格式和用法大全,C#实现保留两位小数的方法
C,货币,2.5.ToString("C"),¥2.50.D,十进制数,25.ToString("D5"),00025.E,科学型,25000.ToString ...
- 【前端开发】限制input输入保留两位小数
<input type="text" name='amount' id="cash_num" placeholder="请输入金额" ...
- js限制输入数字能输入小数点,js定义数组,js往数组中添加数据,js将字符型转为数字型,除法结果保留两位小数——js小测:计算比赛得分
一个朋友跟我说要去给某个比赛算分: 规则:去掉最低分最高分求平均分: 最近在学习大数据可视化——图谱,用到js一些东西,所以今天就用js练练 用到知识点: js限制输入数字能输入小数点,js定义数组, ...
随机推荐
- Android 8.0 无法收到broadcast
参见此页 https://commonsware.com/blog/2017/04/11/android-o-implicit-broadcast-ban.html 目前最简单的方法就是:把targe ...
- mysql 利用druid 为访问密码加密
在原来数据库配置文件jdbc.properties 文件中增加几行加密文件 jdbc.username=rootjdbc.password=KqYkfcQkQOdOpCnaokLfb9Kbzdf+NG ...
- 【Ubuntu 18.04 搭建VNC服务器】
https://www.jianshu.com/p/f58fe5cdeb5f 桌面共享 Ubuntu 18.04自带桌面共享,可以将物理桌面共享给VNC.但是无法创建新的桌面. 具体参考 https: ...
- 详解Django的CSRF认证
1.csrf原理 csrf要求发送post,put或delete请求的时候,是先以get方式发送请求,服务端响应时会分配一个随机字符串给客户端,客户端第二次发送post,put或delete请求时携带 ...
- matlab读取图片的异常表现
在对人脸图片进行对齐时,发现有两张人脸图片一直检测不到人脸,但这两张图片中的人脸明明很好检测(证件照),经过 排查,最终发现问题所在:图片的格式不对. img = imread("**.jp ...
- jQuery基础操作
1.jQuery的介绍 jQuery是一个轻量级的.兼容多浏览器的JavaScript库.jQuery使用户能够更方便地处理HTML Document.Events.实现动画效果.方便地进行Ajax交 ...
- PHP数组笛卡尔积组合排列
/*方法一*/ function descartes() { $t = func_get_args(); if (func_num_args() == 1) { return call_user_fu ...
- Filebeat+Kafka+Logstash+ElasticSearch+Kibana搭建完整版
1. 了解各个组件的作用 Filebeat是一个日志文件托运工具,在你的服务器上安装客户端后,filebeat会监控日志目录或者指定的日志文件,追踪读取这些文件(追踪文件的变化,不停的读) Kafka ...
- 基于docker/dockerfile实现redis主从复制
今天我们来搭建基于docker实现redis主从复制集群 为什么要使用redis集群模式? Redis可以说是内存数据库,mysql的数据库是真实存储在硬盘里的,因此,redis的读取速度要比mysq ...
- python书籍推荐:Head First Python(中文版)
所属网站分类: 资源下载 > python电子书 作者:熊猫烧香 链接:http://www.pythonheidong.com/blog/article/64/ 来源:python黑洞网,专注 ...