当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java Double转Integer用法及代码示例


给定一个 Double 实数。编写一个 Java 程序,将给定的双精度数转换为 Java 中的整数 (int)。

例子:

Input: double = 3452.234
Output: 3452

Input: double = 98.23
Output: 98

Double:双精度数据类型是双精度 64 位 IEEE 754 浮点数。它的价值范围是无穷无尽的。双精度数据类型通常用于十进制值,就像浮点数一样。 double 数据类型也不应该用于精确值,例如货币。其默认值为 0.0。

例:双 d1 = 10.5

Integer:Integer 或 int 数据类型是 32 位有符号二进制补码整数。它的 value-range 介于 - 2,147,483,648 (-2^31) 到 2,147,483,647 (2^31 -1)(含)之间。它的最小值是 - 2,147,483,648,最大值是 2,147,483,647。它的默认值为 0。int 数据类型通常用作整数值的默认数据类型,除非内存没有问题。



例:整数 a = 10

方法

有许多方法可以将 Double 数据类型转换为 Integer (int) 数据类型。下面列出了其中的一些。

  • 使用类型转换
  • 使用 Double.intValue() 方法
  • 使用 Math.round() 方法

方法 1 - 使用类型转换

这个技巧很简单,user-friendly。

句法 -

double data = 3452.345
int value = (int)data;

例:

Java


// Java program to convert Double to
// int using Typecasting
  
public class GFG {
  
    // main method
    public static void main(String args[])
    {
  
        // Get the double value
        double data = 3452.345;
        System.out.println("Double - " + data);
  
        // convert into int
        int value = (int)data;
  
        // print the int value
        System.out.println("Integer - " + value);
    }
}
输出
Double - 3452.345
Integer - 3452

方法 2 - 使用 Double.intValue() 方法

这种技术类似于类型转换方法。类型转换方法和该方法的主要区别在于,类型转换方法是一个显式方法,而该方法是一个 Wrapper 类 Double 截断小数点后的所有数字。

用法:



double data = 3452.345
Double newData = new Double(data);
int value = newData.intValue();

例:

Java


// Java program to convert Double to int
// using using Double.intValue()
public class GFG {
  
    // main method
    public static void main(String args[])
    {
  
        // Get the double value
        Double data = 3452.345;
        System.out.println("Double - " + data);
        // Create a wrapper around
        // the double value
        Double newData = new Double(data);
  
        // convert into int
        int value = newData.intValue();
  
        // print the int value
        System.out.println("Double - " + value);
    }
}

输出

Double - 3452.345
Double - 3452

方法 3 - 使用 Math.round() 方法

Math.round() 接受一个双精度值并将其转换为最接近的长整型值,方法是在该值上加上 0.5 并修剪其小数点。然后可以使用类型转换将 long 值转换为 int。

用法:

long Math.Round(Double doubleValue);

例:

Java


// Java program to convert Double to int
// using Math.round()
  
public class GFG {
  
    // main method
    public static void main(String args[])
    {
  
        // Get the double value
        double data1 = 3452.345;
        System.out.println("Double:" + data1);
  
        // convert into int
        int value1 = (int)Math.round(data1);
  
        // print the int value
        System.out.println("Integer:" + value1);
        
          double data2 = 3452.765;
        System.out.println("\nDouble:" + data2);
  
        // convert into int
        int value2 = (int)Math.round(data2);
  
        // print the int value
        System.out.println("Integer:" + value2);
    }
}
输出
Double:3452.345
Integer:3452

Double:3452.765
Integer:3453

Note - Here you can see that the Math.round() method converts the double to an integer by rounding off the number to the nearest integer. 

For example - 10.6 will be converted to 11 using Math.round() method and 1ill be converted to 10 using typecasting or Double.intValue() method.




相关用法


注:本文由纯净天空筛选整理自Rajput-Ji大神的英文原创作品 Convert Double to Integer in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。