本文介绍了在Java中如何将整数相除并保留两位小数的五种方法,包括直接类型转换、使用BigDecimal、DecimalFormat、NumberFormat以及Formatter。每种方法都提供了详细的代码示例,适用于需要进行数值计算并格式化的场景。
摘要由CSDN通过智能技术生成
public static String format1(double value) {
BigDecimal bd = new BigDecimal(value);
bd = bd.setScale(2, RoundingMode.HALF_UP);
return bd.toString();
二、使用DecimalFormat,保留小数点后两位
public static String format2(double value) {
DecimalFormat df = new DecimalFormat("0.00");
df.setRoundingMode(RoundingMode.HALF_UP);
return df.format(value);
三、使用NumberFormat,保留小数点后两位
public static String format3(double value) {
NumberFormat nf = NumberFormat.getNumberInstance();
nf.setMaximumFractionDigits(2);
* setMinimumFractionDigits设置成2
* 如果不这么做,那么当value的值是100.00的时候返回100
* 而不是100.00
nf.setMinimumFractionDigits(2);
nf.setRoundingMode(RoundingMode.HALF_UP);
* 如果想输出的格式用逗号隔开,可以设置成true
nf.setGroupingUsed(false);
return nf.format(value);
12345678910111213141516171819
四、使用java.util.Formatter,保留小数点后两位
public static String format4(double value) {
* %.2f % 表示 小数点前任意位数 2 表示两位小数 格式后的结果为 f 表示浮点型
return new Formatter().format("%.2f", value).toString();
五、使用String.format来实现。
public static String format5(double value) {
return String.format("%.2f", value).toString();
在前面的章节中,我们自定了一个判断大数值是否为整数的方法,今天我们针对这个方法进行展开论述。
我们可以想象一下:既然能够判断一个数值是否为整数,那么就应该有机会将它的整数部分和小数部分分割开来,也就是我们常说的取整(它同时包含了取小数),在我们初学JAVA时,我们常用的方法是强制转换,或者利用BigDecimal.ROUND语句来进行保留0位小数。今天我们用另一个方法来处理,实现取整(取小数)、特定位数的数值、保留几位小数、以及所有自幂数的输出。这个方法是不涉及精度处理的,也没有强制意味。
BigDecimal bd = new BigDecimal(value);
bd = bd.setScale(2, RoundingMode.HALF_UP);
return bd.toString();
二、使用DecimalFormat,保留小数点后两位
public static String format2(double value) {
DecimalFormat myformat = new DecimalFormat();
myformat.applyPattern("#.00");
System.out.println(myformat.format(33333.22));//33333.22
System.out.println(myformat.format(33333.2));//33333.20
大数字类型目的是为了破除基本类型因为精度限制而存在表达范围的藩篱。
其分别是用于表达超大整数(任意大小,无数值范围限制)的大整数类型(BigInteger)和能够表达许多位小数的大小数类型(BigDecimal)。
1.大整数BigInteger
import java.math.BigInteger;
首先,对于初始化则不像基本类型包装这块讲着3种方式,这里只剩下valueOf() 可以对其初始化。
接着,大整数变量不能使用算术运算符,需要通过以下方法进行运算:
add():取代了加法运算符“+”;
public static void main(String [] args){
double a=33.1415926;
double b=Double.parseDouble(new DecimalFormat("0.00").format(a));
System.out.pr
Java输出时,经常会要求保留指定的小数位数,一般有以下几个常用方法:
①使用DecimalFormat类对象,使用该类,需要导入java.text.DecimalFormat,具体如下:
import java.text.*;
DecimalFormat df= new DecimalFormat("##.00");
double d = 3.0;
String str = df.form