Как перевести double в int java
Как перевести double в int java
Иногда возникают ситуации, когда имея величину какого-либо определенного типа, необходимо присвоить ее переменной другого типа. С переменными и их типами мы познакомились в прошлом уроке, в этом уроке мы рассмотрим наиболее популярные преобразования типов в Java:
Java преобразование строки в число (STRING to NUMBER)
В следующих примерах будет использована конструкция try-catch. Это необходимо для обработки ошибки, в случае, если строка содержит иные символы кроме чисел или число, выходящее за рамки диапазона допустимых значений определенного типа.
Например, строка «somenumber» не может быть переведена в тип int или в любой другой числовой тип. В это случае, при компеляции возникнет ошибка. Чтобы этого избежать, следует обезопаситься с помощью конструкции try-catch.
String to byte
C использованием конструктора
С использованием метода valueOf класса Byte
С использованием метода parseByte класса Byte
Перевод строки в массив байтов и обратно из массива байтов в строку
String to short
C использованием конструктора
C использованием метода valueOf класса Short
C использованием метода parseShort класса Short
String to int
C использованием конструктора
C использованием метода valueOf класса Integer
C использованием метода parseInt класса Integer
String to long
C использованием конструктора
C использованием метода valueOf класса Long
C использованием метода parseLong класса Long
String to float
С использованием конструктора
C использованием метода valueOf класса Float
C использованием метода parseFloat класса Float
String to double
С использованием конструктора
C использованием метода valueOf класса Double
C использованием метода parseDouble класса Double
String to boolean
Преобразование строки в логический тип 2мя способами. Обратите внимание, что строка не соответствующая true, будет преобразована в логическое значение false.
Конвертировать double в int
4 ответа 4
Сама конвертация не сложна:
Т.е. инструкция в общем виде выглядит так:
Если нужно округлять вверх или вниз, используйте Math.round()
Округляем в нужную сторону.
UP — округление в сторону большего числа для положительных чисел и меньшего для отрицательных.
DOWN — округление в сторону меньшего числа для положительных чисел и большего для отрицательных.
CEILING — округление в сторону большего и для положительных, и для отрицательных чисел.
FLOOR — округление в сторону меньшего и для положительных, и для отрицательных чисел.
HALF_UP — округление в большую сторону в случае числа вида 0.5
HALF_DOWN — округление в меньшую сторону в случае числа вида 0.5
HALF_EVEN — классическое округление
Ссылка на документацию >>>
Всё ещё ищете ответ? Посмотрите другие вопросы с метками java double или задайте свой вопрос.
Похожие
Подписаться на ленту
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
дизайн сайта / логотип © 2021 Stack Exchange Inc; материалы пользователей предоставляются на условиях лицензии cc by-sa. rev 2021.12.22.41046
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Как Преобразовать double В int В Java?
Эта статья первоначально опубликована по адресу https://coderolls.com/convert-double-to-int/ В этой статье… Помеченный java.
Эта статья первоначально опубликована по адресу Эта статья первоначально опубликована по адресу
В этой статье мы увидим, как мы можем преобразовать double в int.
В программировании на Java у вас будет двойное примитивное значение (пример 82.14), но для выполнения дальнейших операций вам потребуется значение int (пример 82). итак, давайте посмотрим, как преобразовать double в int в java.
Существует три способа преобразования double в int. Я перечислю их все ниже, а затем мы рассмотрим их один за другим.
1. преобразуйте double в int – с помощью приведения типов
Мы знаем, что double – это 64-разрядное примитивное значение, а int – 32-разрядное примитивное значение. Итак, чтобы преобразовать double в int, мы можем уменьшить значение double до int.
Ниже я привел простой пример, в котором показано, как преобразовать double в int с помощью приведения типов.
Проблема с приведением типов заключается в том, что оно усекает значение после десятичной точки. Он не будет его огибать.
В случае 82.14 мы получим значение int, равное 82, что выглядит нормально. Но когда у нас будет двойное значение, например 82,99, мы получим только 82 и потеряем 0,99, что равно
Это может создать проблему в ваших расчетах.
В случае 82,99 его следует округлить до 83, а затем преобразовать в int.
Это невозможно при приведении типов, но наше следующее решение может этого достичь.
2. преобразуйте double в int – с помощью функции Math.round()
Метод Math.round() округлит значение с плавающей запятой до ближайшего значения long. Затем мы можем ввести его в int.
3. преобразуйте double в int – используя Double.int Значение()
Этот метод не округляет значение перед преобразованием его в значение в Интернете. Он удалит цифры после десятичной точки.
Ниже я привел простую java-программу, которая показывает, как преобразовать double в int с помощью Double. intValue() метод.
Вывод
Мы можем преобразовать double в int в java, используя три приведенных ниже способа.
1. преобразуйте double в int – с помощью приведения типов
В этом методе мы вводим двойное значение в значение int, как указано ниже,
Но таким образом мы потеряем значение после запятой. Он не будет выполнять округление перед преобразованием double в int.
2. преобразуйте double в int – используя Математический раунд()
Таким образом, мы используем метод Math.round() для округления.
Метод Math.round() округляет двойное значение до ближайшего значения long, а затем мы можем ввести значение long в значение int, как указано ниже.
3. преобразуйте double в int – используя Двойной. Значение()
Таким образом, мы также потеряем цифры после десятичных знаков.
Вы можете прочитать больше о строка в int и преобразование int в строку преобразование.
Если вы сочли эту статью стоящей, поддержите меня подарив чашечку кофе ☕
Cast Double to Integer in Java
It throws an exception
«java.lang.ClassCastException: java.lang.Double incompatible with java.lang.Integer»
19 Answers 19
You need to explicitly get the int value using method intValue() like this:
I think it’s impossible to understand the other answers without covering the pitfalls and reasoning behind it.
You cannot directly cast an Integer to a Double object. Also Double and Integer are immutable objects, so you cannot modify them in any way.
Strategy:
To convert a Double to an Integer you would need to follow this strategy:
In code:
Pitfalls:
However, there are a lot of things that are not covered in the code above. The code-above is not null-safe.
So, depending on the application, you may want to add some filtering to avoid nasty Exceptions.
Then, the next shortcoming is the rounding strategy. By default Java will always round down. Rounding down makes perfect sense in all programming languages. Basically Java is just throwing away some of the bytes. In financial applications you will surely want to use half-up rounding (e.g.: round(0.5) = 1 and round(0.4) = 0 ).
Auto-(un)boxing
You could be tempted to use auto-(un)boxing in this, but I wouldn’t. If you’re already stuck now, then the next examples will not be that obvious neither. If you don’t understand the inner workings of auto-(un)boxing then please don’t use it.
I guess the following shouldn’t be a surprise. But if it is, then you may want to read some article about casting in Java.
Prefer valueOf:
Also, don’t be tempted to use new Integer() constructor (as some other answers propose). The valueOf() methods are better because they use caching. It’s a good habit to use these methods, because from time to time they will save you some memory.





