Java中如何将double转换为int?

书欣 Java经验 发布时间:2023-07-01 17:58:40 阅读数:1634 1
下文笔者讲述double转int的方法分享,如下所示

double转int的实现思路

方式1:
   将double转换为int
     使用类型转换

方式2:
  将double转换为int
    使用Math.round()

方式3:
  将double转换为int
    使用Double.IntValue()

1.将double转换为int —使用类型转换

public class DoubleToIntUsingTypecasting{
     public static void main(String []args){
        double doubleValue = 92.14; // 92.14
        System.out.println("doubleValue: "+doubleValue);
        //typecase double to int
        int intValue = (int) doubleValue; // 92
        System.out.println("intValue: "+intValue);
     }
}

//运行以上代码,将输出以下信息
//double转换为int,会丢失小数位后面的精度
doubleValue:92.14
整数值:92

2.将double转换为int--使用Math.round()

Math.round()方法:
   将浮点值四舍五入到最接近long值
    然后可将其转换为int类型
/ **
 *使用java将double转换为int的Java程序 
 * Math.round()方法 
 ** /
 public class DoubleToIntUsingRoundMethod{
     public static void main(String []args){
        // 情况1
        double doubleValue = 92.14; // 92.14
        System.out.println("doubleValue: "+doubleValue);
        //将case双精度型转换为int
        int intValue = (int) Math.round(doubleValue); // 92
        System.out.println("intValue: "+intValue);
        System.out.println();
        // 情况2
        double nextDoubleValue = 92.99; // 
        System.out.println("nextDoubleValue: "+nextDoubleValue);
        // Math.round(nextDoubleValue)返回long值
        //将case的类型转换为int
        int nextIntValue = (int) Math.round(nextDoubleValue);    // 83
        System.out.println("nextIntValue: "+nextIntValue);              
     }
}
 
//运行以上代码,将输出以下信息
doubleValue:92.14
整数值:92
nextDoubleValue:92.99
nextIntValue:83

3.将double转换为int----使用Double.IntValue()

此方式的原理:
   将double原语值转换为Doublewrapper类
    然后使用wrapper类的intValue()方法Double

  此方法不会在将值转换为int值之前将其四舍五入
  它将删除小数点后的数字
/ **
 * 
 *使用java将double转换为int的Java程序 
 * Double.intValue() 方法  
 * 
 ** /
 public class DoubleToIntUsingIntValueMethod{
     public static void main(String []args){
        double doubleValue = 92.14; // 92.14
        System.out.println("doubleValue: "+doubleValue);
        //创建Double wrapper对象
        Double doubleValueObject = new Double(doubleValue);
        //将case双精度型转换为int
        int intValue = doubleValueObject.intValue(); // 92
        System.out.println("intValue: "+intValue);
     }
}
 
//运行以上代码,将输出以下信息
doubleValue:92.14
整数值:92
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaJingYan/202307/16882055526948.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者