当前位置:首页 » 编程语言 » java取小数

java取小数

发布时间: 2023-04-23 07:56:07

java有一个小数,如何去掉小数部分

1、Math.round(float f)对小数部分四舍五入
或者强值类型转换成int类型,直接去掉小数部分!

2、

3、向上取整:Math.ceil() //只要有小数都+1
向下取整:Math.floor() //不取小数
四舍五入:Math.round() //四舍五入

② java中 double型取小数部分

double
dd =
123.45;
//设数值则派仔
int
j
=
(int)Math.round(dd*
100);
//羡并小数点后两位前移,并四舍五入
double
k
=
(double)j
/
100.00;
//还原小孙汪数点后两位

③ java中取小数部分

import java.math.BigDecimal;
import java.util.Scanner;

public class GetFloat {
public static void main(String args[]) {
Scanner in = new Scanner(System.in);
float f = in.nextFloat();
int fInt = (int) f;
BigDecimal b1 = new BigDecimal(Float.toString(f));
BigDecimal b2 = new BigDecimal(Integer.toString(fInt));
float fPoint = b1.subtract(b2).floatValue();
System.out.println("整数部分为:" + fInt + "\n" + "小数部分为: " + fPoint);
}
}

④ java怎么取实数中的小数部分

首先楼上那两位对于普通的使用场景来说基本是正确的。但是在一些需要精确结果的场景中(比如货币金额计算),double就会有问题了,比如:

(int)1023.99999999999999=1024;

再比如:

doublen1=0.03;
doublen2=0.02;
doublen3=n1-n2;
System.out.println(n3);//0.009999999999999998

所以如果需要精确安全的操作拿漏的话,需要用到这个类:java.math.BigDecimal

调用它的divideAndRemainder方法来进行计算,该计算可以理解为:进行一次保消拿烂留余数的除法运算。结果会返回一个BigDecimal类型且长度为2的数组,0下标的元素敏睁是该计算的商,1下标的元素是该结果的余数。

BigDecimaln4=newBigDecimal("1023.99999999999999");
BigDecimal[]result=n4.divideAndRemainder(BigDecimal.valueOf(1));
System.out.println(result[1].toString());//0.99999999999999

注意,构造BigDecimal对象的时候我使用的是字符串String类型的“1023.99999999999999
”,如果直接写1023.99999999999999的话会被认为是double类型的数,然后double类型的该值为1024.0,所以给字符串类型的值可以保证BigDecimal对象接收到的数就准确无误是我们心里想的数。

⑤ java 除法怎样取小数部分

(((double)lili1)/lili)
-
(lili1/lili)就可以了,如果想显示出小数,必须要将数值转换为float或double类型才可以,推荐double类型

⑥ java 取两位小数 不要四舍五入怎么做

  1. 对一个小数点后有多位数的实数,取两位小数而不四舍五入,有两种方案:

  2. 乘100再强转成int,再除以100就得到了想要的晌困橘埋数

  3. 也可以写一个小工宴伍念具,以便以后重复使用,代码如下:

  4. 	/**
    *a为一个带有未知位小数的实数
    *对其取b位小数
    *@parama
    *@paramb
    *@return
    */
    staticdoublegetDouble(doublea,intb){
    intx=0;
    inty=1;
    for(inti=0;i<b;i++){
    y=y*10;
    }
    System.out.println(y);
    x=(int)(a*y);
    System.out.println("x="+x);
    return(double)x/y;
    }
热点内容
随机启动脚本 发布:2025-07-05 16:10:30 浏览:515
微博数据库设计 发布:2025-07-05 15:30:55 浏览:19
linux485 发布:2025-07-05 14:38:28 浏览:299
php用的软件 发布:2025-07-05 14:06:22 浏览:750
没有权限访问计算机 发布:2025-07-05 13:29:11 浏览:425
javaweb开发教程视频教程 发布:2025-07-05 13:24:41 浏览:684
康师傅控流脚本破解 发布:2025-07-05 13:17:27 浏览:233
java的开发流程 发布:2025-07-05 12:45:11 浏览:678
怎么看内存卡配置 发布:2025-07-05 12:29:19 浏览:277
访问学者英文个人简历 发布:2025-07-05 12:29:17 浏览:828