Эта статья первоначально опубликована по адресу Эта статья первоначально опубликована по адресу
В этой статье мы увидим, как мы можем преобразовать double в int.
В программировании на Java у вас будет двойное примитивное значение (пример 82.14), но для выполнения дальнейших операций вам потребуется значение int (пример 82). итак, давайте посмотрим, как преобразовать double в int в java.
Существует три способа преобразования double в int. Я перечислю их все ниже, а затем мы рассмотрим их один за другим.
- преобразование double в int – с помощью приведения типов
- преобразуйте double в int – с помощью
Math.round() - преобразовать double в int – с помощью
Двойной. Значение()
Возможно, вам захочется посетить: Как Преобразовать Целое Число В Строку В Java
1. преобразуйте double в int – с помощью приведения типов
Мы знаем, что double – это 64-разрядное примитивное значение, а int – 32-разрядное примитивное значение. Итак, чтобы преобразовать double в int, мы можем уменьшить значение double до int.
Ниже я привел простой пример, в котором показано, как преобразовать double в int с помощью приведения типов.
/**
* A java program to convert double to int using typecasting
* @author Gaurav Kukade at coderolls.com
**/
public class DoubleToIntUsingTypecasting{
public static void main(String []args){
double doubleValue = 82.14; // 82.14
System.out.println("doubleValue: "+doubleValue);
//typecase double to int
int intValue = (int) doubleValue; // 82
System.out.println("intValue: "+intValue);
}
}
Выход:
doubleValue: 82.14 intValue: 82
Проблема с приведением типов заключается в том, что оно усекает значение после десятичной точки. Он не будет его огибать.
В случае 82.14 мы получим значение int, равное 82, что выглядит нормально. Но когда у нас будет двойное значение, например 82,99, мы получим только 82 и потеряем 0,99, что равно ~1.
Это может создать проблему в ваших расчетах.
В случае 82,99 его следует округлить до 83, а затем преобразовать в int.
Это невозможно при приведении типов, но наше следующее решение может этого достичь.
2. преобразуйте double в int – с помощью функции Math.round()
Метод Math.round() округлит значение с плавающей запятой до ближайшего значения long. Затем мы можем ввести его в int.
Ниже я привел простую java-программу, которая показывает, как преобразовать double в int с помощью метода Math.round() .
/**
* A java program to convert double to int using
* Math.round() method
* @author Gaurav Kukade at coderolls.com
**/
public class DoubleToIntUsingRoundMethod{
public static void main(String []args){
// case 1
double doubleValue = 82.14; // 82.14
System.out.println("doubleValue: "+doubleValue);
//typecase double to int
int intValue = (int) Math.round(doubleValue); // 82
System.out.println("intValue: "+intValue);
System.out.println();
// case 2
double nextDoubleValue = 82.99; //
System.out.println("nextDoubleValue: "+nextDoubleValue);
// Math.round(nextDoubleValue) returns long value
//typecase long to int
int nextIntValue = (int) Math.round(nextDoubleValue); // 83
System.out.println("nextIntValue: "+nextIntValue);
}
}
Выход:
doubleValue: 82.14 intValue: 82 nextDoubleValue: 82.99 nextIntValue: 83
3. преобразуйте double в int – используя Double.int Значение()
Таким образом, мы преобразуем примитивное значение double в класс-оболочку Double , а затем сможем использовать метод intValue() класса-оболочки Double .
Этот метод не округляет значение перед преобразованием его в значение в Интернете. Он удалит цифры после десятичной точки.
Ниже я привел простую java-программу, которая показывает, как преобразовать double в int с помощью Double. intValue() метод.
/**
*
* A java program to convert double to int using
* Double.intValue() method
* @author Gaurav Kukade at coderolls.com
*
**/
public class DoubleToIntUsingIntValueMethod{
public static void main(String []args){
double doubleValue = 82.14; // 82.14
System.out.println("doubleValue: "+doubleValue);
//create Double wrapper object
Double doubleValueObject = new Double(doubleValue);
//typecase double to int
int intValue = doubleValueObject.intValue(); // 82
System.out.println("intValue: "+intValue);
}
}
Выход:
doubleValue: 82.14 intValue: 82
Вывод
Мы можем преобразовать double в int в java, используя три приведенных ниже способа.
1. преобразуйте double в int – с помощью приведения типов
В этом методе мы вводим двойное значение в значение int, как указано ниже,
int intValue = (int) Math.round(doubleValue);
Но таким образом мы потеряем значение после запятой. Он не будет выполнять округление перед преобразованием double в int.
2. преобразуйте double в int – используя Математический раунд()
Таким образом, мы используем метод Math.round() для округления.
Метод Math.round() округляет двойное значение до ближайшего значения long, а затем мы можем ввести значение long в значение int, как указано ниже.
int nextIntValue = (int) Math.round(nextDoubleValue);
3. преобразуйте double в int – используя Двойной. Значение()
Таким образом, мы преобразуем значение double в класс-оболочку Double , а затем используем метод Double.intValue() для получения значения int.
//create Double wrapper object Double doubleValueObject = new Double(doubleValue); //typecase double to int int intValue = doubleValueObject.intValue();
Таким образом, мы также потеряем цифры после десятичных знаков.
Итак, вот как мы преобразуем double в int в java. Вы можете проверить все три ( DoubleToIntUsingTypecasting.java , Двойное использование метода обхода.java , Метод двойного указанияintvaluemethod.java ) программы на GitHub
Вы можете прочитать больше о строка в int и преобразование int в строку преобразование.
Вы можете посетить мой канал YouTube “coderolls” , чтобы найти больше видеоуроков.
Если вы сочли эту статью стоящей, поддержите меня подарив чашечку кофе ☕
Статьи по теме
Оригинал: “https://dev.to/gauravkukade/how-to-convert-double-to-int-in-java-38mf”