Как double преобразовать в int java
Перейти к содержимому

Как double преобразовать в int java

  • автор:

Конвертировать double в int

Но тут, есть подводные камни, а именно — тип int содержит значения в диапазоне от -2147483648 до 2147483647 , притом что они являются целочисленные, т.е. без дробной части. А double содержит числа в диапазоне от 4.9E-324 до 4.9E-324 . Т.е. при конвертации может произойти переполнение и/или не учитывание дробной части.

Для более гибкого преобразования стоит использовать классы BigDecimal и BigInteger .

Отслеживать
ответ дан 29 янв 2017 в 17:20
14.9k 1 1 золотой знак 21 21 серебряный знак 40 40 бронзовых знаков

Если нужно округлять вверх или вниз, используйте Math.round()

double a = 1.8; int b = Math.round(a); // b = 2 

Отслеживать
ответ дан 29 янв 2017 в 17:21
Кирилл Малышев Кирилл Малышев
10.8k 1 1 золотой знак 18 18 серебряных знаков 34 34 бронзовых знака

Double mDouble = 0.25; int mInt = (int)mDouble; 

Отслеживать
ответ дан 29 янв 2017 в 17:14
172 11 11 бронзовых знаков

Округляем в нужную сторону.

 double dx = 10.787901; double newDouble2 = new BigDecimal(dx).setScale(3, RoundingMode.HALF_EVEN).doubleValue(); int ix = (int)newDouble2; // переводим в int 

UP — округление в сторону большего числа для положительных чисел и меньшего для отрицательных.
DOWN — округление в сторону меньшего числа для положительных чисел и большего для отрицательных.
CEILING — округление в сторону большего и для положительных, и для отрицательных чисел.
FLOOR — округление в сторону меньшего и для положительных, и для отрицательных чисел.
HALF_UP — округление в большую сторону в случае числа вида 0.5
HALF_DOWN — округление в меньшую сторону в случае числа вида 0.5
HALF_EVEN — классическое округление

Ссылка на документацию >>>

Как double преобразовать в int java

Примитивный тип double можно преобразовать в int явно указав на необходимость преобразования (int) .

Объект Double можно преобразовать с помощью метода intValue() .

Кроме того мы можем использовать методы округления библиотеки Math .

public class App  public static void main(String[] args)  double f = 5.5; int i = (int) f; System.out.println(i); // => 5 Double d = 5.5; int n = d.intValue(); System.out.println(n); // => 5 // округлим до ближайшего целого числа вверх n = (int) Math.ceil(d); System.out.println(n); // => 6 // округлим до ближайшего целого числа вниз n = (int) Math.floor(d); System.out.println(n); // => 5 // округлим до ближайшего целого числа n = (int) Math.round(d); System.out.println(n); // => 6 > > 

Как перевести double в int java

Для перевода значения типа double в значение типа int в Java можно воспользоваться явным приведением типов. Это позволяет преобразовать значение одного типа данных в значение другого типа данных. Вот пример кода:

double myDouble = 3.14; int myInt = (int) myDouble; System.out.println(myInt); // => 3 

Здесь значение переменной myDouble явно приводится к типу int с помощью оператора (int) . Значение переменной myDouble теряет дробную часть и преобразуется в целочисленное значение, которое сохраняется в переменную myInt .

Преобразование строки в различные типы оболочки и примитивные типы данных в Java

В этом посте будет обсуждаться, как преобразовать строку в Java в различные типы оболочки и примитивные типы данных, поддерживаемые Java.

1. Преобразование строки в int (или Integer)

Мы можем использовать Integer.parseInt() чтобы получить соответствующее примитивное значение int строки или использовать Integer.valueOf() чтобы получить соответствующее значение класса-оболочки Integer. Если строка не является целым числом, NumberFormatException будет брошен. Для получения более подробной информации см. это почта.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *