給定一個 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.
相關用法
- Java Doubles.indexOf(double[] array, double target)用法及代碼示例
- Java Doubles.indexOf(double[] array, double[] target)用法及代碼示例
- Java Integer List轉Integer Array用法及代碼示例
- Java String轉Double用法及代碼示例
- Java Double轉String用法及代碼示例
- Java Double轉String用法及代碼示例
- Java Java.Lang.Double用法及代碼示例
- Java boolean轉integer用法及代碼示例
- Java integer轉boolean用法及代碼示例
- Java String轉Integer Array用法及代碼示例
- Java DoubleStream reduce(double identity, DoubleBinaryOperator op)用法及代碼示例
- Java Double byteValue()用法及代碼示例
- Java Double.compareTo()用法及代碼示例
- Java Double.equals()用法及代碼示例
注:本文由純淨天空篩選整理自Rajput-Ji大神的英文原創作品 Convert Double to Integer in Java。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。