Класс Float16
- Все реализованные интерфейсы:
-
Serializable,Comparable<Float16>
public final class Float16 extends Number implements Comparable<Float16>
Формат binary16:
S EEEEE MMMMMMMMMM
Знак - 1 бит
Порядок - 5 бит
Значимая часть - 10 бит (не включает явный бит, вытекающий из порядка, см. PRECISION)
Если не указано иное, методы в этом классе используют правила округления (JLS 15.4) округление до ближайшего.
Это класс типа value-based; программисты должны рассматривать экземпляры, которые равны, как взаимозаменяемые и не должны использовать их для синхронизации, иначе может возникнуть непредсказуемое поведение. Например, в будущей версии синхронизация может не работать.
Равенство, эквивалентность и сравнение чисел с плавающей точкой
Классjava.lang.Double содержит обсуждение равенства, эквивалентности и сравнения значений с плавающей точкой, которое также применимо к значениям типа Float16. Проблемы преобразования десятичных и двоичных чисел
Обсуждение проблем с преобразованием двоичных чисел в десятичные вjava.lang.Double также применимо к значениям типа Float16.- Примечание API:
- Методы в этом классе, как правило, имеют аналогичные методы в
Float/DoubleилиMath/StrictMath. Если не указано иное, обработка специальных значений с плавающей точкой, таких как NaN, бесконечности и знакомых нулей, в методах этого класса аналогична обработке эквивалентных случаев методами вFloat,Double,Mathи т.д. - С момента:
- 24
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
BYTES |
Количество байтов, используемых для представления значения Float16, 2. |
static final int |
MAX_EXPONENT |
Максимальный порядок конечной переменной типа Float16, 15. |
static final Float16 |
MAX_VALUE |
Постоянная, хранящая наибольшее положительное конечное значение типа Float16, (2-2-10)·215, численно равное 65504.0. |
static final int |
MIN_EXPONENT |
Минимальный порядок нормализованной переменной типа Float16, -14. |
static final Float16 |
MIN_NORMAL |
Постоянная, хранящая наименьшее положительное нормализованное значение типа Float16, 2-14. |
static final Float16 |
MIN_VALUE |
Постоянная, хранящая наименьшее положительное ненулевое значение типа Float16, 2-24. |
static final Float16 |
NaN |
Постоянная, хранящая значение «не число» (NaN) типа
Float16. |
static final Float16 |
NEGATIVE_INFINITY |
Постоянная, хранящая отрицательную бесконечность типа
Float16. |
static final Float16 |
POSITIVE_INFINITY |
Постоянная, хранящая положительную бесконечность типа
Float16. |
static final int |
PRECISION |
Количество битов в значимой части значения Float16, 11. |
static final int |
SIZE |
Количество битов, используемых для представления значения Float16, 16. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static Float16 |
abs |
Возвращает абсолютное значение аргумента. |
static Float16 |
add |
Складывает два значения Float16 вместе в соответствии с семантикой оператора +, используя политику округления до ближайшего. |
byte |
byteValue() |
Возвращает значение этого Float16 как byte после сужающего примитивного преобразования. |
static int |
compare |
Сравнивает два указанных значения Float16. |
int |
compareTo |
Числовое сравнение двух объектов Float16. |
static Float16 |
copySign |
Возвращает первый аргумент с плавающей точкой со знаком второго аргумента с плавающей точкой. |
static Float16 |
divide |
Делит два значения Float16 в соответствии с семантикой оператора /, используя политику округления до ближайшего. |
double |
doubleValue() |
Возвращает значение этого Float16 как double после расширяющего примитивного преобразования. |
boolean |
equals |
Сравнивает этот объект с указанным объектом. |
static short |
float16ToRawShortBits |
Возвращает представление заданного значения с плавающей точкой в соответствии с представлением IEEE 754 с плавающей точкой с 16 битами. |
static short |
float16ToShortBits |
Возвращает представление заданного значения с плавающей точкой в соответствии с представлением IEEE 754 с плавающей точкой с 16 битами. |
float |
floatValue() |
Возвращает значение этого Float16 как float после расширяющего примитивного преобразования. |
static Float16 |
fma |
Возвращает результат умножения и сложения трех аргументов; то есть возвращает точное произведение первых двух аргументов, суммированное с третьим аргументом, а затем округляется один раз до ближайшего Float16. |
static int |
getExponent |
Возвращает несмещённый показатель степени, используемый в представлении Float16. |
int |
hashCode() |
Возвращает хэш-код для этого объекта Float16. |
static int |
hashCode |
Возвращает хэш-код для значения Float16; совместимо с Float16.hashCode(). |
int |
intValue() |
Возвращает значение этого Float16 как int после сужающего примитивного преобразования. |
static boolean |
isFinite |
Возвращает true, если аргумент является конечным значением с плавающей точкой; возвращает false в противном случае (для NaN и бесконечных аргументов). |
static boolean |
isInfinite |
Возвращает true, если указанное число имеет бесконечно большую величину; возвращает false в противном случае. |
static boolean |
isNaN |
Возвращает true, если указанное число является значением Not-a-Number (NaN); возвращает false в противном случае. |
long |
longValue() |
Возвращает значение этого Float16 как long после сужающего примитивного преобразования. |
static Float16 |
max |
Возвращает большее из двух значений Float16. |
static Float16 |
min |
Возвращает меньшее из двух значений Float16. |
static Float16 |
multiply |
Умножает два значения Float16 в соответствии с семантикой оператора *, используя политику округления до ближайшего. |
static Float16 |
negate |
Возвращает отрицание аргумента. |
static Float16 |
nextDown |
Возвращает значение с плавающей точкой, прилежащее к v в направлении минус бесконечность. |
static Float16 |
nextUp |
Возвращает значение с плавающей точкой, прилежащее к v в направлении плюс бесконечность. |
static Float16 |
scalb |
Возвращает v × 2scaleFactor, округлённое так, как если бы оно выполнялось одним правильно округлённым умножением с плавающей точкой. |
static Float16 |
shortBitsToFloat16 |
Возвращает значение Float16, соответствующее заданному битовому представлению. |
short |
shortValue() |
Возвращает значение этого Float16 как short после сужающего примитивного преобразования. |
static Float16 |
signum |
Возвращает функцию signum аргумента; ноль, если аргумент равен нулю, 1,0, если аргумент больше нуля, -1,0, если аргумент меньше нуля. |
static Float16 |
sqrt |
Возвращает квадратный корень из операнда. |
static Float16 |
subtract |
Вычитает два значения Float16 в соответствии с семантикой оператора -, используя политику округления до ближайшего. |
static String |
toHexString |
Возвращает шестнадцатеричное строковое представление аргумента
Float16. |
String |
toString() |
Возвращает строковое представление этого Float16. |
static String |
toString |
Возвращает строковое представление аргумента Float16. |
static Float16 |
ulp |
Возвращает размер единицы в наименьшем значении аргумента. |
static Float16 |
valueOf |
Возвращает значение Float16, округлённое от аргумента double, используя политику округления до ближайшего. |
static Float16 |
valueOf |
Возвращает значение Float16, округлённое от аргумента float, используя политику округления до ближайшего. |
static Float16 |
valueOf |
Возвращает значение int, преобразованное в
Float16. |
static Float16 |
valueOf |
Возвращает значение long, преобразованное в Float16. |
static Float16 |
valueOf |
Возвращает Float16, содержащий значение с плавающей точкой, представленное строкой аргумента. |
static Float16 |
valueOf |
Возвращает значение Float16, округлённое от аргумента BigDecimal, используя политику округления до ближайшего. |
Подробное описание полей
POSITIVE_INFINITY
public static final Float16 POSITIVE_INFINITY
Float16.- См. также:
NEGATIVE_INFINITY
public static final Float16 NEGATIVE_INFINITY
Float16.- См. также:
NaN
public static final Float16 NaN
Float16.- См. также:
MAX_VALUE
public static final Float16 MAX_VALUE
Float16, (2-2-10)·215, численно равно 65504.0.- См. также:
MIN_NORMAL
public static final Float16 MIN_NORMAL
Float16, 2-14.- См. также:
MIN_VALUE
public static final Float16 MIN_VALUE
Float16, 2-24.- См. также:
SIZE
public static final int SIZE
Float16, 16.- См. также:
PRECISION
public static final int PRECISION
Float16, 11. Это соответствует параметру N в разделе 4.2.3 спецификации языка Java.- См. также:
MAX_EXPONENT
public static final int MAX_EXPONENT
Float16, 15. Он равен значению, возвращаемому
Float16.getExponent(Float16.MAX_VALUE).- См. также:
MIN_EXPONENT
public static final int MIN_EXPONENT
Float16, -14. Он равен значению, возвращаемому
Float16.getExponent(Float16.MIN_NORMAL).- См. также:
BYTES
public static final int BYTES
Float16, 2.- См. также:
Подробное описание методов
toString
public static String toString(Float16 f16)
Float16. Поведение этого метода аналогично Float.toString(float) при обработке специальных значений (знаков, бесконечностей и NaN) и генерации десятичной строки, которая будет преобразована обратно в значение аргумента.- Параметры:
-
f16- преобразуемое значениеFloat16. - Возвращает:
- строковое представление аргумента.
- См. также:
toHexString
public static String toHexString(Float16 f16)
Float16. Поведение этого класса аналогично Float.toHexString(float), за исключением того, что значение показателя степени "p-14" используется для поднормализованных значений Float16.- Примечание API:
- Этот метод соответствует операции convertToHexCharacter, определенной в IEEE 754.
- Параметры:
-
f16- преобразуемое значениеFloat16. - Возвращает:
- шестнадцатеричное строковое представление аргумента.
- См. также:
valueOf
public static Float16 valueOf(int value)
int, преобразованное в
Float16.- Примечание API:
- Этот метод соответствует операции convertFromInt, определенной в IEEE 754.
- Параметры:
-
value- значениеint. - Возвращает:
- значение
int, преобразованное вFloat16
valueOf
public static Float16 valueOf(long value)
long, преобразованное в Float16.- Примечание API:
- Этот метод соответствует операции convertFromInt, определенной в IEEE 754.
- Параметры:
-
value- значениеlong. - Возвращает:
- значение
long, преобразованное вFloat16
valueOf
public static Float16 valueOf(float f)
Float16, округлённое от аргумента float с использованием правила округления до ближайшего.- Примечание API:
- Этот метод соответствует операции convertFormat, определенной в IEEE 754.
- Параметры:
-
f- значениеfloat - Возвращает:
- значение
Float16, округлённое от аргументаfloatс использованием правила округления до ближайшего
valueOf
public static Float16 valueOf(double d)
Float16, округлённое от аргумента double с использованием правила округления до ближайшего.- Примечание API:
- Этот метод соответствует операции convertFormat, определенной в IEEE 754.
- Параметры:
-
d- значениеdouble - Возвращает:
- значение
Float16, округлённое от аргументаdoubleс использованием правила округления до ближайшего
valueOf
public static Float16 valueOf(String s) throws NumberFormatException
Float16, содержащую значение с плавающей запятой, представленное строкой-аргументом. Грамматика строк, принимаемых этим методом, такая же, как и у Double.valueOf(String). Политика округления также аналогична политике, используемой этим методом; допустимый ввод рассматривается как точное числовое значение, округленное один раз до ближайшего представимого Float16 значения.- Примечание API:
- Этот метод соответствует операциям convertFromDecimalCharacter и convertFromHexCharacter, определённым в IEEE 754.
- Параметры:
-
s- строка, подлежащая разбору. - Возвращает:
- значение с плавающей запятой, представленное строковым аргументом.
- Использует:
-
NullPointerException- если строка равна null -
NumberFormatException- если строка не содержит разбираемогоFloat16. - См. также:
valueOf
public static Float16 valueOf(BigDecimal v)
Float16, округлённое из аргумента BigDecimal с использованием политики округления до ближайшего значения.- Параметры:
-
v-BigDecimal - Возвращает:
- значение
Float16, округлённое из аргументаBigDecimalс использованием политики округления до ближайшего значения
isNaN
public static boolean isNaN(Float16 f16)
true, если заданное число является значением «Не число» (NaN), false в противном случае.- Примечание API:
- Этот метод соответствует операции isNaN, определённой в IEEE 754.
- Параметры:
-
f16- значение, подлежащее проверке. - Возвращает:
-
true, если аргумент равен NaN;falseв противном случае. - См. также:
isInfinite
public static boolean isInfinite(Float16 f16)
true, если заданное число имеет бесконечно большую величину, false в противном случае.- Примечание API:
- Этот метод соответствует операции isInfinite, определённой в IEEE 754.
- Параметры:
-
f16- значение, подлежащее проверке. - Возвращает:
-
true, если аргумент равен положительной или отрицательной бесконечности;falseв противном случае. - См. также:
isFinite
public static boolean isFinite(Float16 f16)
true, если аргумент представляет собой конечное число с плавающей запятой; возвращает false в противном случае (для аргументов NaN и бесконечности).- Примечание API:
- Этот метод соответствует операции isFinite, определённой в IEEE 754.
- Параметры:
-
f16- значение с плавающей запятой для проверки - Возвращает:
-
true, если аргумент представляет собой конечное число с плавающей запятой,falseв противном случае. - См. также:
byteValue
public byte byteValue()
Float16 в качестве byte после преобразования примитивного типа с сужением.- Переопределяет:
-
byteValueв классеNumber - Возвращает:
- значение этого
Float16в качествеbyteпосле преобразования примитивного типа с сужением - См. Спецификацию языка Java:
- 5.1.3 Преобразование примитивного типа с сужением
toString
shortValue
public short shortValue()
Float16 в качестве short после преобразования примитивного типа с сужением.- Переопределяет:
-
shortValueв классеNumber - Возвращает:
- значение этого
Float16в качествеshortпосле преобразования примитивного типа с сужением - См. Спецификацию языка Java:
- 5.1.3 Преобразование примитивного типа с сужением
intValue
public int intValue()
Float16 как int после преобразования примитивного типа с сужением.- Определено в:
-
intValueв классеNumber - Примечание API:
- Этот метод соответствует операции convertToIntegerTowardZero, определённой в IEEE 754.
- Возвращает:
- значение этого
Float16какintпосле преобразования примитивного типа с сужением - См. Спецификацию языка Java:
- 5.1.3 Преобразование примитивного типа с сужением
longValue
public long longValue()
Float16 как long после преобразования примитивного типа с сужением.- Определено в:
-
longValueв классеNumber - Примечание API:
- Этот метод соответствует операции convertToIntegerTowardZero, определённой в IEEE 754.
- Возвращает:
- значение этого
Float16какlongпосле преобразования примитивного типа с сужением - См. Спецификацию языка Java:
- 5.1.3 Преобразование примитивного типа с сужением
floatValue
public float floatValue()
Float16 как float после преобразования примитивного типа с расширением.- Определено в:
-
floatValueв классеNumber - Примечание API:
- Этот метод соответствует операции convertFormat, определённой в IEEE 754.
- Возвращает:
- значение этого
Float16какfloatпосле преобразования примитивного типа с расширением - См. Спецификацию языка Java:
- 5.1.2 Преобразование примитивного типа с расширением
doubleValue
public double doubleValue()
Float16 как double после преобразования примитивного типа с расширением.- Определено в:
-
doubleValueв классеNumber - Примечание API:
- Этот метод соответствует операции convertFormat, определённой в IEEE 754.
- Возвращает:
- значение этого
Float16какdoubleпосле преобразования примитивного типа с расширением - См. Спецификацию языка Java:
- 5.1.2 Преобразование примитивного типа с расширением
hashCode
public int hashCode()
Float16. Общий контракт Object#hashCode() удовлетворяется. Все значения NaN имеют одинаковый код хэширования. Кроме того, все различные числовые значения имеют уникальные коды хэширования; в частности, отрицательный ноль и положительный ноль имеют разные коды хэширования.hashCode
public static int hashCode(Float16 value)
Float16; совместимо с Float16.hashCode().- Parameters:
-
value- значение для хеширования - Returns:
- значение хеш-кода для значения
Float16.
equals
public boolean equals(Object obj)
true тогда и только тогда, когда аргумент не равен null и является объектом типа Float16, представляющим значение Float16, которое имеет то же значение, что и значение double, представляемое этим объектом.- Overrides:
-
equalsв классеObject - Parameters:
-
obj- объект-ссылка для сравнения. - Returns:
-
true, если этот объект идентичен аргументу obj;falseв противном случае. - См. Спецификацию языка Java:
- 15.21.1 Операторы числового равенства == и !=
- См. также:
float16ToRawShortBits
public static short float16ToRawShortBits(Float16 f16)
- Parameters:
-
f16- число с плавающей точкой типаFloat16. - Returns:
- биты, представляющие число с плавающей точкой.
- См. также:
float16ToShortBits
public static short float16ToShortBits(Float16 f16)
NaN.- Parameters:
-
f16- число с плавающей точкой типаFloat16. - Returns:
- биты, представляющие число с плавающей точкой.
- См. также:
shortBitsToFloat16
public static Float16 shortBitsToFloat16(short bits)
Float16, соответствующее заданному битовому представлению.- Parameters:
-
bits- любое целое число типаshort. - Returns:
- значение
Float16числа с плавающей точкой с той же битовой схемой. - См. также:
compareTo
public int compareTo(Float16 anotherFloat16)
Float16 в числовом порядке. Этот метод накладывает полную упорядоченность на объекты типа Float16 с двумя отличиями по сравнению с неполной упорядоченностью, определенной операторами числового сравнения языка Java (<, <=,
==, >=, >) на значениях float и double.
- NaN не упорядочен по отношению к другим значениям и не равен самому себе при использовании операторов сравнения. Этот метод выбирает определение
Float16.NaNравным самому себе и больше всех других значенийFloat16(включаяFloat16.POSITIVE_INFINITY). - Положительный ноль и отрицательный ноль сравниваются как числовые равные, но являются различными и различимыми значениями. Этот метод выбирает определение положительного нуля как большего, чем отрицательный ноль.
- Specified by:
-
compareToв интерфейсеComparable<Float16> - Parameters:
-
anotherFloat16- сравниваемое значениеFloat16. - Returns:
- значение
0, еслиanotherFloat16численно равно этому значениюFloat16; значение меньше0, если это значениеFloat16численно меньшеanotherFloat16; и значение больше0, если это значениеFloat16численно большеanotherFloat16. - См. Спецификацию языка Java:
- 15.20.1 Операторы числового сравнения
<,<=,>и>=
- См. также:
compare
public static int compare(Float16 f1, Float16 f2)
Float16.- Parameters:
-
f1- первое значениеFloat16для сравнения -
f2- второе значениеFloat16для сравнения - Returns:
- значение
0, еслиf1численно равноf2; значение меньше0, еслиf1численно меньшеf2; и значение больше0, еслиf1численно большеf2. - См. также:
max
public static Float16 max(Float16 a, Float16 b)
Float16. Обработка знакомых нулей, NaN, бесконечностей и других особых случаев этим методом аналогична обработке этих случаев методом Math#max(double, double).- API Note:
- Этот метод соответствует операции максимального значения, определенной в IEEE 754.
- Parameters:
-
a- первый операнд -
b- второй операнд - Returns:
- большее из
aиb - См. также:
min
public static Float16 min(Float16 a, Float16 b)
Float16. Обработка знакомых нулей, NaN, бесконечностей и других особых случаев этим методом аналогична обработке этих случаев методом Math#min(double, double).- API Note:
- Этот метод соответствует операции минимального значения, определенной в IEEE 754.
- Parameters:
-
a- первый операнд -
b- второй операнд - Returns:
- меньшее из
aиb - См. также:
add
public static Float16 add(Float16 addend, Float16 augend)
Float16 вместе в соответствии с семантикой оператора + с политикой округления до ближайшего значения. Обработка знакомых нулей, NaN, бесконечностей и других особых случаев этим методом идентична обработке этих случаев встроенным оператором + для сложения с плавающей точкой (JLS 15.18.2).- API Note:
- Этот метод соответствует операции сложения, определенной в IEEE 754.
- Parameters:
-
addend- первый операнд -
augend- второй операнд - Returns:
- сумма операндов
- См. Спецификацию языка Java:
- 15.4 Выражения с плавающей точкой
15.18.2 Операторы сложения (+ и -) для числовых типов
вычитание
public static Float16 subtract(Float16 minuend, Float16 subtrahend)
Float16 в соответствии с семантикой оператора -, используя политику округления до ближайшего. Обработка знакомых нулей, NaN, бесконечностей и других особых случаев в этом методе аналогична обработке этих случаев встроенным оператором - для вычитания с плавающей запятой (JLS 15.18.2).- Примечание API:
- Этот метод соответствует операции вычитания, определенной в IEEE 754.
- Параметры:
-
minuend- первый операнд -
subtrahend- второй операнд - Возвращает:
- разность операндов
- См. Спецификацию языка Java:
- 15.4 Выражения с плавающей запятой
15.18.2 Арифметические операторы (+ и -) для числовых типов
умножение
public static Float16 multiply(Float16 multiplier, Float16 multiplicand)
Float16 в соответствии с семантикой оператора *, используя политику округления до ближайшего. Обработка знакомых нулей, NaN и бесконечностей, а также других особых случаев в этом методе аналогична обработке таких случаев встроенным оператором * для умножения с плавающей запятой (JLS 15.17.1).- Примечание API:
- Этот метод соответствует операции умножения, определенной в IEEE 754.
- Параметры:
-
multiplier- первый операнд -
multiplicand- второй операнд - Возвращает:
- произведение операндов
- См. Спецификацию языка Java:
- 15.4 Выражения с плавающей запятой
15.17.1 Оператор умножения *
деление
public static Float16 divide(Float16 dividend, Float16 divisor)
Float16 в соответствии с семантикой оператора /, используя политику округления до ближайшего. Обработка знакомых нулей, NaN и бесконечностей, а также других особых случаев в этом методе аналогична обработке таких случаев встроенным оператором / для деления с плавающей запятой (JLS 15.17.2).- Примечание API:
- Этот метод соответствует операции деления, определенной в IEEE 754.
- Параметры:
-
dividend- первый операнд -
divisor- второй операнд - Возвращает:
- частное от деления операндов
- См. Спецификацию языка Java:
- 15.4 Выражения с плавающей запятой
15.17.2 Оператор деления /
sqrt
public static Float16 sqrt(Float16 radicand)
Math.sqrt(double).- Примечание API:
- Этот метод соответствует операции squareRoot, определенной в IEEE 754.
- Параметры:
-
radicand- аргумент, для которого необходимо вычислить квадратный корень - Возвращает:
- квадратный корень из операнда
- См. также:
fma
public static Float16 fma(Float16 a, Float16 b, Float16 c)
Float16. Обработка нулей, NaN, бесконечностей и других особых случаев в этом методе аналогична обработке этих случаев в Math.fma(float, float, float).- Примечание API:
- Этот метод соответствует операции fusedMultiplyAdd, определенной в IEEE 754.
- Параметры:
-
a- значение -
b- значение -
c- значение - Возвращает:
- (a × b + c), вычисленный как с неограниченным диапазоном и точностью, и округлённый один раз до ближайшего значения
Float16 - См. также:
отрицание
public static Float16 negate(Float16 f16)
- Если аргумент равен нулю, результат — ноль с противоположным знаком, чем аргумент.
- Если аргумент равен бесконечности, результат — бесконечность с противоположным знаком, чем аргумент.
- Если аргумент — NaN, результат — NaN.
- Примечание API:
- Этот метод соответствует операции отрицания, определенной в IEEE 754.
- Параметры:
-
f16- значение, которое нужно изменить на противоположное - Возвращает:
- отрицание аргумента
- См. Спецификацию языка Java:
- 15.15.4 Унарный минус оператор
-
абс
public static Float16 abs(Float16 f16)
Math.abs(float).- Параметры:
-
f16- аргумент, для которого необходимо определить абсолютное значение - Возвращает:
- абсолютное значение аргумента
- См. также:
getExponent
public static int getExponent(Float16 f16)
Float16. - Если аргумент NaN или бесконечность, то результат равен
MAX_EXPONENT+ 1. - Если аргумент ноль или поднормализованное число, то результат равен
MIN_EXPONENT- 1.
- Примечание API:
- Этот метод аналогичен операции logB, определенной в IEEE 754, но возвращает другое значение для поднормализованных аргументов.
- Параметры:
-
f16- значениеFloat16 - Возвращает:
- несмещённый экспонент аргумента
- См. также:
ulp
public static Float16 ulp(Float16 f16)
Float16 — это положительное расстояние между этим значением с плавающей запятой и значением
Float16, следующим по величине. Обратите внимание, что для не-NaN x, ulp(-x) == ulp(x). Особые случаи:
- Если аргумент NaN, результат NaN.
- Если аргумент положительная или отрицательная бесконечность, результат — положительная бесконечность.
- Если аргумент положительный или отрицательный ноль, результат —
Float16.MIN_VALUE. - Если аргумент ±
Float16.MAX_VALUE, то результат равен 25, 32.0.
- Параметры:
-
f16- значение с плавающей запятой, для которого необходимо получить ulp - Возвращает:
- размер ulp аргумента
- См. также:
nextUp
public static Float16 nextUp(Float16 v)
v в направлении положительной бесконечности. Особые случаи:
- Если аргумент NaN, результат NaN.
- Если аргумент положительная бесконечность, результат — положительная бесконечность.
- Если аргумент ноль, результат —
MIN_VALUE
- Примечание API:
- Этот метод соответствует операции nextUp, определенной в IEEE 754.
- Параметры:
-
v- начальное значение с плавающей запятой - Возвращает:
- Смежное значение с плавающей запятой, более близкое к положительной бесконечности.
- См. также:
nextDown
public static Float16 nextDown(Float16 v)
v в направлении отрицательной бесконечности. Особые случаи:
- Если аргумент равен NaN, результат равен NaN.
- Если аргумент равен отрицательной бесконечности, результат равен отрицательной бесконечности.
- Если аргумент равен нулю, результат равен -
MIN_VALUE
- Примечание API:
- Этот метод соответствует операции nextDown, определённой в стандарте IEEE 754.
- Параметры:
-
v- начальное значение с плавающей точкой - Возвращает:
- Смежное значение с плавающей точкой, более близкое к отрицательной бесконечности.
- См. также:
scalb
public static Float16 scalb(Float16 v, int scaleFactor)
v × 2scaleFactor, округлённое так, как если бы оно выполнялось с помощью одного правильно округлённого умножения с плавающей точкой. Если порядок результата находится между MIN_EXPONENT и MAX_EXPONENT, ответ вычисляется точно. Если порядок результата будет больше
Float16.MAX_EXPONENT, возвращается бесконечность. Обратите внимание, что если результат является субнормальным, точность может быть потеряна; то есть, когда scalb(x, n) является субнормальным, scalb(scalb(x, n),
-n) может не равняться x. Когда результат не NaN, результат имеет тот же знак, что и v. Особые случаи:
- Если первый аргумент равен NaN, возвращается NaN.
- Если первый аргумент равен бесконечности, возвращается бесконечность с тем же знаком.
- Если первый аргумент равен нулю, возвращается ноль с тем же знаком.
- Примечание API:
- Этот метод соответствует операции scaleB, определённой в стандарте IEEE 754.
- Параметры:
-
v- число, которое будет масштабировано на степень двойки. -
scaleFactor- степень двойки, используемая для масштабированияv - Возвращает:
-
v× 2scaleFactor - См. также:
copySign
public static Float16 copySign(Float16 magnitude, Float16 sign)
- Примечание API:
- Этот метод соответствует операции copySign, определённой в стандарте IEEE 754.
- Параметры:
-
magnitude- параметр, определяющий величину результата -
sign- параметр, определяющий знак результата - Возвращает:
- значение с величиной
magnitudeи знакомsign. - См. также:
signum
public static Float16 signum(Float16 f)
Особые случаи:
- Если аргумент равен NaN, результат равен NaN.
- Если аргумент равен положительному или отрицательному нулю, результат такой же, как и аргумент.
- Параметры:
-
f- значение с плавающей точкой, для которого нужно вернуть функцию signum - Возвращает:
- функция signum аргумента
- См. также:
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/jdk.incubator.vector/jdk/incubator/vector/Float16.html