【转】Java保留固定小数位的4种方法
package com.test; import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.NumberFormat;
public class Main {
/**
* 测试用例为保留8位
* */
double f = 1234.1234567898789;
/**
* 由于 BigDecimal 对象是不可变的,此方法的调用不会 导致初始对象被修改;
* newScale - 要返回的 BigDecimal 值的标度;
* roundingMode - 要应用的舍入模式;
* ROUND_HALF_UP 舍入模式为四舍五入;
* */
public void method_01() {
BigDecimal bg = new BigDecimal(f);
double f1 = bg.setScale(8, BigDecimal.ROUND_HALF_UP).doubleValue();
System.out.println(f1);
}
/**
* DecimalFormat转换最简便
*/
public void method_02() {
DecimalFormat df = new DecimalFormat("#.00000000");
System.out.println(df.format(f));
}
/**
* String.format打印最简便
*/
public void method_03() {
System.out.println(String.format("%.8f", f));
}
public void method_04() {
NumberFormat nf = NumberFormat.getNumberInstance();
nf.setMaximumFractionDigits(8);
System.out.println(nf.format(f));
}
public static void main(String[] args) {
Main test = new Main();
test.method_01();
test.method_02();
test.method_03();
test.method_04();
}
}
结果:
1234.12345679
1234.12345679
1234.12345679
1,234.12345679
【转】Java保留固定小数位的4种方法的更多相关文章
- Java中Double保留后小数位的几种方法
最近做个小实验,其中一部分要求将表单提交的数据转换为double,这个功能其实很简单直接一句Double.parseDouble(request.getParameter("chinese& ...
- java保留两位小数4种方法(转载)
喵喵最近经常遇到小数点保留的问题,转载一篇Java里面的几种小数点位数控制方法. 这是转载的原地址:https://www.cnblogs.com/chenrenshui/p/6128444.html ...
- java保留两位小数4种方法
import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFormat; public c ...
- java: 保留两位小数4种方法
import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberFormat; public c ...
- java double类型保留两位小数4种方法【转】
4种方法,都是四舍五入,例: import java.math.BigDecimal; import java.text.DecimalFormat; import java.text.NumberF ...
- java分享第十六天( java读取properties文件的几种方法&java配置文件持久化:static块的作用)
java读取properties文件的几种方法一.项目中经常会需要读取配置文件(properties文件),因此读取方法总结如下: 1.通过java.util.Properties读取Propert ...
- Java中创建数组的几种方法
Java中创建数组的几种方法 public static void main(String[] args) { //创建数组的第一种方法 int[] arr=new int[6]; int intVa ...
- Java List转换为字符串的几种方法
Java List转换为字符串的几种方法 import org.apache.commons.lang3.StringUtils; import java.util.ArrayList; import ...
- java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明)
转载地址:http://www.devba.com/index.php/archives/4581.html java向MySQL插入当前时间的四种方式和java时间日期格式化的几种方法(案例说明); ...
随机推荐
- 全国计算机等级考试二级教程-C语言程序设计_第7章_函数
函数执行,从右到左执行 #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<string.h> main() ...
- win下vm10+mac os 10.9安装遇到问题
在windows 8下安装vm10.0.0+mac os 10.9遇到问题记录例如以下: 一.因为之前我装的vm9+mac os 10.7: 二.准备安装mac os 10.9,把vm9换成vm10: ...
- 使用Abator生产ibatis配置文件
什么都不说了,直接进入正题. 插件安装地址:http://ibatis.apache.org/tools/abator 里面有name和url,填了就可以安装了. 通过菜单的 File > Ne ...
- 新手求大神,有其他swit-case的思路写这个程序么?
两个程序: switch-case与if-else if的区别相同点:可以实现多分支结构;不同点:switch:一般只能用于等值比较.(可以进行范围运算???---学会用switch计算范围出炉的思路 ...
- Block使用要点
Block简介 Block其实包含两个部分内容 Block执行的代码,这是在编译的时候已经生成好的: 一个包含Block执行时需要的所有外部变量值的数据结构. Block将使用到的.作用域附近到的变量 ...
- OC中另外的一个常用技术:通知(Notification)
OC中另外的一个常用技术:通知(Nofitication)其实这里的通知和之前说到的KVO功能很想,也是用于监听操作的,但是和KVO不同的是,KVO只用来监听属性值的变化,这个发送监听的操作是系统控制 ...
- jquery ajax调用
client: <script type="text/javascript" language="javascript"> function jqu ...
- BOOST_PP_INC_I(x)实现
这个比较有意思,# define BOOST_PP_INC_I(x) BOOST_PP_INC_ ## x 连接在一起以后,然后定义为x+1 实现了inc功能,不过最多也就到255 # /* Copy ...
- Android 通过HTTPCLINET GET请求互联网数据
private EditText et; private TextView tv; HttpClient client; @Override protected void onCreate(Bundl ...
- 致命错误C0000034正在应用更新操作37解决方法
当碰到这个问题的时候关闭电脑,启动,不断按F8键,进入命令行,输入Notepad.exe弹出记事本,文件,打开,所有文件,然后将C:\Windows\WinSxS目录下的pending.xml文件中的 ...