Spec-Zone.ru › OpenJDK 25

Класс VectorOperators

java.lang.Object
jdk.incubator.vector.VectorOperators
public abstract class VectorOperators extends Object
Этот класс состоит исключительно из статических констант, описывающих поэлементные операции над векторами, а также вложенных интерфейсов, которые классифицируют эти операции. Статические константы служат маркерами, обозначающими конкретно запрошенные поэлементные операции в выражениях с векторами, например маркер ADD в w = v0.lanewise(ADD, v1).

Документация для каждого отдельного маркера операции очень краткая и содержит символьное выражение Java для операции, запрашиваемой этим маркером. В этих символьных выражениях используются следующие общепринятые элементы:

  • a, b, c — имена значений элементов вектора
  • Операторы Java, например +, ?: и т. д., — операторы выражений
  • Имена методов Java, например max, sin и т. д., — методы стандартных классов, таких как Math, Double и т. д. Неполные имена методов следует интерпретировать так, как если бы они находились в контексте статического импорта, с разрешением перегрузки.
  • bits(x) — вызов функции, который возвращает нижележащие биты значения x. Если x является значением с плавающей точкой, это либо doubleToLongBits(x), либо floatToIntBits(x). В противном случае это просто значение x.
  • ESIZE — размер типа операнда в байтах
  • EMASK — битовая маска типа операнда, где EMASK=(1<<(ESIZE*8))-1
  • intVal, byteVal и т. д. — операнд преобразования с указанным типом

Операции над векторами с плавающей точкой

  • Поэлементные операции над векторами с плавающей точкой соответствуют требованиям к точности и монотонности эквивалентной операции или метода Java, упомянутых в документации, если не указано иное. Если тип элемента вектора — float, а операция или метод Java принимает и возвращает только значения double, скалярная операция для каждого элемента адаптируется так, чтобы преобразовать типы операндов и результата: в частности, операнды float расширяются до операндов double, а результат double сужается до float.
  • Некоторые ассоциативные операции над векторами с плавающей точкой не являются действительно ассоциативными для значений элементов с плавающей точкой. В частности, это ADD и MUL, используемые в операциях межэлементной редукции, таких как FloatVector.reduceLanes(Associative). Результат такой операции зависит как от входных значений (вектора и маски), так и от порядка скалярных операций, выполняемых для объединения значений элементов. В таких случаях порядок намеренно не определён. Это позволяет JVM генерировать оптимальный машинный код для целевой платформы во время выполнения. Если платформа поддерживает векторную инструкцию для сложения или умножения всех значений в векторе либо существует другая эффективная последовательность машинного кода, JVM может сгенерировать такой машинный код. В противном случае применяется реализация по умолчанию, которая последовательно складывает элементы вектора от начала до конца. Поэтому результат такой операции может различаться для одних и тех же входных значений.

Обратите внимание, что один и тот же маркер операции может применяться к нескольким различным типам элементов вектора. Поэтому эти маркеры ведут себя как перегруженные операторы или методы, а не как специфичные для типа дескрипторы методов или лямбда-выражения. Кроме того, в отличие от дескрипторов методов или лямбда-выражений, эти операции не обладают операционной семантикой: у них нет метода apply или invoke. Они используются только для запроса поэлементных операций у объектов-векторов и сами по себе не могут выполнять операции над отдельными значениями элементов.

Краткое описание вложенных классов

Модификатор и тип Класс Описание
static interface  VectorOperators.Associative
Тип для всех допускающих переассоциацию поэлементных бинарных операторов, используемый в выражениях, таких как e = v0.reduceLanes(ADD).
static interface  VectorOperators.Binary
Тип для всех поэлементных бинарных операторов (с двумя аргументами), используемый в выражениях, таких как w = v0.lanewise(ADD, v1).
static interface  VectorOperators.Comparison
Тип для всех бинарных поэлементных логических сравнений значений элементов, используемый в выражениях, таких как m = v0.compare(LT, v1).
static interface  VectorOperators.Conversion<E,F>
Тип для всех поэлементных преобразований значений элементов, используемый в выражениях, таких как w1 = v0.convert(I2D, 1).
static interface  VectorOperators.Operator
Базовый тип для всех маркеров операций; предоставляет методы для получения общих свойств, таких как арность, типы аргументов и возвращаемого значения, символьное имя и имя операции.
static interface  VectorOperators.Ternary
Тип для всех поэлементных тернарных операторов (с тремя аргументами), используемый в выражениях, таких как w = v0.lanewise(FMA, v1, v2).
static interface  VectorOperators.Test
Тип для всех унарных поэлементных логических проверок значений элементов, используемый в выражениях, таких как m = v0.test(IS_FINITE).
static interface  VectorOperators.Unary
Тип для всех поэлементных унарных операторов (с одним аргументом), используемый в выражениях, таких как w = v0.lanewise(NEG).

Краткое описание полей

Модификатор и тип Поле Описание
static final VectorOperators.Unary ABS
Получить abs(a).
static final VectorOperators.Unary ACOS
Получить acos(a).
static final VectorOperators.Associative ADD
Получить a+b.
static final VectorOperators.Associative AND
Получить a&b.
static final VectorOperators.Binary AND_NOT
Получить a&~b.
static final VectorOperators.Binary ASHR
Получить a>>(n&(ESIZE*8-1)).
static final VectorOperators.Unary ASIN
Получить asin(a).
static final VectorOperators.Unary ATAN
Получить atan(a).
static final VectorOperators.Binary ATAN2
Получить atan2(a,b).
static final VectorOperators.Conversion<Byte,Double> B2D
Преобразовать byteVal в (double)byteVal.
static final VectorOperators.Conversion<Byte,Float> B2F
Преобразовать byteVal в (float)byteVal.
static final VectorOperators.Conversion<Byte,Integer> B2I
Преобразовать byteVal в (int)byteVal.
static final VectorOperators.Conversion<Byte,Long> B2L
Преобразовать byteVal в (long)byteVal.
static final VectorOperators.Conversion<Byte,Short> B2S
Преобразовать byteVal в (short)byteVal.
static final VectorOperators.Unary BIT_COUNT
Получить bitCount(a).
static final VectorOperators.Ternary BITWISE_BLEND
Получить a^((a^b)&c).
static final VectorOperators.Unary CBRT
Получить cbrt(a).
static final VectorOperators.Binary COMPRESS_BITS
Получить compress(a,n).
static final VectorOperators.Unary COS
Получить cos(a).
static final VectorOperators.Unary COSH
Получить cosh(a).
static final VectorOperators.Conversion<Double,Byte> D2B
Преобразовать doubleVal в (byte)doubleVal.
static final VectorOperators.Conversion<Double,Float> D2F
Преобразовать doubleVal в (float)doubleVal.
static final VectorOperators.Conversion<Double,Integer> D2I
Преобразовать doubleVal в (int)doubleVal.
static final VectorOperators.Conversion<Double,Long> D2L
Преобразовать doubleVal в (long)doubleVal.
static final VectorOperators.Conversion<Double,Short> D2S
Преобразовать doubleVal в (short)doubleVal.
static final VectorOperators.Binary DIV
Получить a/b.
static final VectorOperators.Comparison EQ
Сравнить a==b.
static final VectorOperators.Unary EXP
Получить exp(a).
static final VectorOperators.Binary EXPAND_BITS
Получить expand(a,n).
static final VectorOperators.Unary EXPM1
Получить expm1(a).
static final VectorOperators.Conversion<Float,Byte> F2B
Преобразовать floatVal в (byte)floatVal.
static final VectorOperators.Conversion<Float,Double> F2D
Преобразовать floatVal в (double)floatVal.
static final VectorOperators.Conversion<Float,Integer> F2I
Преобразовать floatVal в (int)floatVal.
static final VectorOperators.Conversion<Float,Long> F2L
Преобразовать floatVal в (long)floatVal.
static final VectorOperators.Conversion<Float,Short> F2S
Преобразовать floatVal в (short)floatVal.
static final VectorOperators.Associative FIRST_NONZERO
Получить bits(a)!=0?a:b.
static final VectorOperators.Ternary FMA
Получить fma(a,b,c).
static final VectorOperators.Comparison GE
Сравнить a>=b.
static final VectorOperators.Comparison GT
Сравнить a>b.
static final VectorOperators.Binary HYPOT
Получить hypot(a,b).
static final VectorOperators.Conversion<Integer,Byte> I2B
Преобразовать intVal в (byte)intVal.
static final VectorOperators.Conversion<Integer,Double> I2D
Преобразовать intVal в (double)intVal.
static final VectorOperators.Conversion<Integer,Float> I2F
Преобразовать intVal в (float)intVal.
static final VectorOperators.Conversion<Integer,Long> I2L
Преобразовать intVal в (long)intVal.
static final VectorOperators.Conversion<Integer,Short> I2S
Преобразовать intVal в (short)intVal.
static final VectorOperators.Test IS_DEFAULT
Проверить bits(a)==0.
static final VectorOperators.Test IS_FINITE
Проверить isFinite(a).
static final VectorOperators.Test IS_INFINITE
Проверить isInfinite(a).
static final VectorOperators.Test IS_NAN
Проверить isNaN(a).
static final VectorOperators.Test IS_NEGATIVE
Проверить bits(a)<0.
static final VectorOperators.Conversion<Long,Byte> L2B
Преобразовать longVal в (byte)longVal.
static final VectorOperators.Conversion<Long,Double> L2D
Преобразовать longVal в (double)longVal.
static final VectorOperators.Conversion<Long,Float> L2F
Преобразовать longVal в (float)longVal.
static final VectorOperators.Conversion<Long,Integer> L2I
Преобразовать longVal в (int)longVal.
static final VectorOperators.Conversion<Long,Short> L2S
Преобразовать longVal в (short)longVal.
static final VectorOperators.Comparison LE
Сравнить a<=b.
static final VectorOperators.Unary LEADING_ZEROS_COUNT
Получить numberOfLeadingZeros(a).
static final VectorOperators.Unary LOG
Получить log(a).
static final VectorOperators.Unary LOG10
Получить log10(a).
static final VectorOperators.Unary LOG1P
Получить log1p(a).
static final VectorOperators.Binary LSHL
Получить a<<(n&(ESIZE*8-1)).
static final VectorOperators.Binary LSHR
Получить (a&EMASK)>>>(n&(ESIZE*8-1)).
static final VectorOperators.Comparison LT
Сравнить a<b.
static final VectorOperators.Associative MAX
Получить max(a,b).
static final VectorOperators.Associative MIN
Получить min(a,b).
static final VectorOperators.Associative MUL
Получить a*b.
static final VectorOperators.Comparison NE
Сравнить a!=b.
static final VectorOperators.Unary NEG
Получить -a.
static final VectorOperators.Unary NOT
Получить ~a.
static final VectorOperators.Associative OR
Получить a|b.
static final VectorOperators.Binary POW
Получить pow(a,b).
static final VectorOperators.Conversion<Double,Long> REINTERPRET_D2L
Интерпретировать биты doubleVal как long.
static final VectorOperators.Conversion<Float,Integer> REINTERPRET_F2I
Интерпретировать биты floatVal как int.
static final VectorOperators.Conversion<Integer,Float> REINTERPRET_I2F
Интерпретировать биты intVal как float.
static final VectorOperators.Conversion<Long,Double> REINTERPRET_L2D
Интерпретировать биты longVal как double.
static final VectorOperators.Unary REVERSE
Получить reverse(a).
static final VectorOperators.Unary REVERSE_BYTES
Получить reverseBytes(a).
static final VectorOperators.Binary ROL
Получить rotateLeft(a,n).
static final VectorOperators.Binary ROR
Получить rotateRight(a,n).
static final VectorOperators.Conversion<Short,Byte> S2B
Преобразовать shortVal в (byte)shortVal.
static final VectorOperators.Conversion<Short,Double> S2D
Преобразовать shortVal в (double)shortVal.
static final VectorOperators.Conversion<Short,Float> S2F
Преобразовать shortVal в (float)shortVal.
static final VectorOperators.Conversion<Short,Integer> S2I
Преобразовать shortVal в (int)shortVal.
static final VectorOperators.Conversion<Short,Long> S2L
Преобразовать shortVal в (long)shortVal.
static final VectorOperators.Binary SADD
Получить насыщающее a+b.
static final VectorOperators.Unary SIN
Получить sin(a).
static final VectorOperators.Unary SINH
Получить sinh(a).
static final VectorOperators.Unary SQRT
Получить sqrt(a).
static final VectorOperators.Binary SSUB
Получить насыщающее a-b.
static final VectorOperators.Binary SUADD
Получить насыщающее беззнаковое a+b.
static final VectorOperators.Binary SUB
Получить a-b.
static final VectorOperators.Binary SUSUB
Получить насыщающее беззнаковое a-b.
static final VectorOperators.Unary TAN
Получить tan(a).
static final VectorOperators.Unary TANH
Получить tanh(a).
static final VectorOperators.Unary TRAILING_ZEROS_COUNT
Получить numberOfTrailingZeros(a).
static final VectorOperators.Comparison UGE
Выполнить беззнаковое сравнение a>=b.
static final VectorOperators.Comparison UGT
Выполнить беззнаковое сравнение a>b.
static final VectorOperators.Comparison ULE
Выполнить беззнаковое сравнение a<=b.
static final VectorOperators.Comparison ULT
Выполнить беззнаковое сравнение a<b.
static final VectorOperators.Associative UMAX
Получить беззнаковое max(a,b).
static final VectorOperators.Associative UMIN
Получить беззнаковое min(a,b).
static final VectorOperators.Associative XOR
Получить a^b.
static final VectorOperators.Conversion<Byte,Integer> ZERO_EXTEND_B2I
Дополнить нулями byteVal до int.
static final VectorOperators.Conversion<Byte,Long> ZERO_EXTEND_B2L
Дополнить нулями byteVal до long.
static final VectorOperators.Conversion<Byte,Short> ZERO_EXTEND_B2S
Дополнить нулями byteVal до short.
static final VectorOperators.Conversion<Integer,Long> ZERO_EXTEND_I2L
Дополнить нулями intVal до long.
static final VectorOperators.Conversion<Short,Integer> ZERO_EXTEND_S2I
Дополнить нулями shortVal до int.
static final VectorOperators.Conversion<Short,Long> ZERO_EXTEND_S2L
Дополнить нулями shortVal до long.
static final VectorOperators.Unary ZOMO
Получить a==0?0:-1 (ноль или минус один).

Краткое описание методов

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание полей

NOT

public static final VectorOperators.Unary NOT
Вычисляет ~a. Только для целочисленных типов.

ZOMO

public static final VectorOperators.Unary ZOMO
Вычисляет a==0?0:-1 (ноль или минус один). Только для целочисленных типов.

ABS

public static final VectorOperators.Unary ABS
Вычисляет abs(a).

NEG

public static final VectorOperators.Unary NEG
Вычисляет -a.

BIT_COUNT

public static final VectorOperators.Unary BIT_COUNT
Вычисляет bitCount(a). Только для целочисленных типов.
Начиная с:
19

TRAILING_ZEROS_COUNT

public static final VectorOperators.Unary TRAILING_ZEROS_COUNT
Вычисляет numberOfTrailingZeros(a). Только для целочисленных типов.
Начиная с:
19

LEADING_ZEROS_COUNT

public static final VectorOperators.Unary LEADING_ZEROS_COUNT
Вычисляет numberOfLeadingZeros(a). Только для целочисленных типов.
Начиная с:
19

REVERSE

public static final VectorOperators.Unary REVERSE
Вычисляет reverse(a). Только для целочисленных типов.
Начиная с:
19

REVERSE_BYTES

public static final VectorOperators.Unary REVERSE_BYTES
Вычисляет reverseBytes(a). Только для целочисленных типов.
Начиная с:
19

SIN

public static final VectorOperators.Unary SIN
Вычисляет sin(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

COS

public static final VectorOperators.Unary COS
Вычисляет cos(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

TAN

public static final VectorOperators.Unary TAN
Вычисляет tan(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

ASIN

public static final VectorOperators.Unary ASIN
Вычисляет asin(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

ACOS

public static final VectorOperators.Unary ACOS
Вычисляет acos(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

ATAN

public static final VectorOperators.Unary ATAN
Вычисляет atan(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

EXP

public static final VectorOperators.Unary EXP
Вычисляет exp(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

LOG

public static final VectorOperators.Unary LOG
Вычисляет log(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

LOG10

public static final VectorOperators.Unary LOG10
Вычисляет log10(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

SQRT

public static final VectorOperators.Unary SQRT
Вычисляет sqrt(a). Только для чисел с плавающей точкой. См. раздел «Операции над векторами чисел с плавающей точкой» выше

CBRT

public static final VectorOperators.Unary CBRT
Вычисляет cbrt(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

SINH

public static final VectorOperators.Unary SINH
Вычисляет sinh(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

COSH

public static final VectorOperators.Unary COSH
Вычисляет cosh(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

TANH

public static final VectorOperators.Unary TANH
Вычисляет tanh(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

EXPM1

public static final VectorOperators.Unary EXPM1
Вычисляет expm1(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

LOG1P

public static final VectorOperators.Unary LOG1P
Вычисляет log1p(a). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

ADD

public static final VectorOperators.Associative ADD
Вычисляет a+b.

SUB

public static final VectorOperators.Binary SUB
Вычисляет a-b.

MUL

public static final VectorOperators.Associative MUL
Вычисляет a*b.

DIV

public static final VectorOperators.Binary DIV
Вычисляет a/b. Только для чисел с плавающей точкой.

MIN

public static final VectorOperators.Associative MIN
Вычисляет min(a,b).

MAX

public static final VectorOperators.Associative MAX
Вычисляет max(a,b).

FIRST_NONZERO

public static final VectorOperators.Associative FIRST_NONZERO
Вычисляет bits(a)!=0?a:b.

AND

public static final VectorOperators.Associative AND
Вычисляет a&b. Только для целочисленных типов.

AND_NOT

public static final VectorOperators.Binary AND_NOT
Вычисляет a&~b. Только для целочисленных типов.

OR

public static final VectorOperators.Associative OR
Вычисляет a|b. Только для целочисленных типов.

XOR

public static final VectorOperators.Associative XOR
Вычисляет a^b. Только для целочисленных типов.

SADD

public static final VectorOperators.Binary SADD
Вычисляет a+b с насыщением. Только для целочисленных типов.
См. также:
  • VectorMath.addSaturating(int, int)

SUADD

public static final VectorOperators.Binary SUADD
Вычисляет беззнаковый a+b с насыщением. Только для целочисленных типов.
См. также:
  • VectorMath.addSaturatingUnsigned(int, int)

SSUB

public static final VectorOperators.Binary SSUB
Вычисляет a-b с насыщением. Только для целочисленных типов.
См. также:
  • VectorMath.subSaturating(int, int)

SUSUB

public static final VectorOperators.Binary SUSUB
Вычисляет беззнаковый a-b с насыщением. Только для целочисленных типов.
См. также:
  • VectorMath.subSaturatingUnsigned(int, int)

UMIN

public static final VectorOperators.Associative UMIN
Вычисляет беззнаковый min(a,b). Только для целочисленных типов.
См. также:
  • (int, int)

UMAX

public static final VectorOperators.Associative UMAX
Вычисляет беззнаковый max(a,b). Только для целочисленных типов.
См. также:
  • (int, int)

LSHL

public static final VectorOperators.Binary LSHL
Вычисляет a<<(n&(ESIZE*8-1)). Только для целочисленных типов.

ASHR

public static final VectorOperators.Binary ASHR
Вычисляет a>>(n&(ESIZE*8-1)). Только для целочисленных типов.

LSHR

public static final VectorOperators.Binary LSHR
Вычисляет (a&EMASK)>>>(n&(ESIZE*8-1)). Только для целочисленных типов.

ROL

public static final VectorOperators.Binary ROL
Вычисляет rotateLeft(a,n). Только для целочисленных типов.

ROR

public static final VectorOperators.Binary ROR
Вычисляет rotateRight(a,n). Только для целочисленных типов.

COMPRESS_BITS

public static final VectorOperators.Binary COMPRESS_BITS
Вычисляет compress(a,n). Только для целочисленных типов, int и long.
Начиная с:
19

EXPAND_BITS

public static final VectorOperators.Binary EXPAND_BITS
Вычисляет expand(a,n). Только для целочисленных типов, int и long.
Начиная с:
19

ATAN2

public static final VectorOperators.Binary ATAN2
Вычисляет atan2(a,b). См. «Только для чисел с плавающей точкой». Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

POW

public static final VectorOperators.Binary POW
Вычисляет pow(a,b). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

HYPOT

public static final VectorOperators.Binary HYPOT
Вычисляет hypot(a,b). Только для чисел с плавающей точкой. Гарантия полумонотонности отсутствует. См. раздел «Операции над векторами чисел с плавающей точкой» выше

BITWISE_BLEND

public static final VectorOperators.Ternary BITWISE_BLEND
Вычисляет a^((a^b)&c). (Побитовое (c(i)?b(i):a(i)).) Только для целочисленных типов.

FMA

public static final VectorOperators.Ternary FMA
Вычисляет fma(a,b,c). Только для чисел с плавающей точкой.

IS_DEFAULT

public static final VectorOperators.Test IS_DEFAULT
Проверяет bits(a)==0. (Не выполняется для -0.0.)

IS_NEGATIVE

public static final VectorOperators.Test IS_NEGATIVE
Проверяет bits(a)<0. (Выполняется для -0.0.)

IS_FINITE

public static final VectorOperators.Test IS_FINITE
Проверяет isFinite(a). Только для чисел с плавающей точкой.

IS_NAN

public static final VectorOperators.Test IS_NAN
Проверяет isNaN(a). Только для чисел с плавающей точкой.

IS_INFINITE

public static final VectorOperators.Test IS_INFINITE
Проверяет isInfinite(a). Только для чисел с плавающей точкой.

EQ

public static final VectorOperators.Comparison EQ
Сравнивает a==b.

NE

public static final VectorOperators.Comparison NE
Сравнивает a!=b.

LT

public static final VectorOperators.Comparison LT
Сравнивает a<b.

LE

public static final VectorOperators.Comparison LE
Сравнивает a<=b.

GT

public static final VectorOperators.Comparison GT
Сравнивает a>b.

GE

public static final VectorOperators.Comparison GE
Сравнивает a>=b.

ULT

public static final VectorOperators.Comparison ULT
Беззнаково сравнивает a<b. Только для целочисленных типов.
См. также:
  • Integer.compareUnsigned(int, int)
  • Long.compareUnsigned(long, long)

ULE

public static final VectorOperators.Comparison ULE
Беззнаково сравнивает a<=b. Только для целочисленных типов.
См. также:
  • Integer.compareUnsigned(int, int)
  • Long.compareUnsigned(long, long)

UGT

public static final VectorOperators.Comparison UGT
Беззнаково сравнивает a>b. Только для целочисленных типов.
См. также:
  • Integer.compareUnsigned(int, int)
  • Long.compareUnsigned(long, long)

UGE

public static final VectorOperators.Comparison UGE
Беззнаково сравнивает a>=b. Только для целочисленных типов.
См. также:
  • Integer.compareUnsigned(int, int)
  • Long.compareUnsigned(long, long)

B2D

public static final VectorOperators.Conversion<Byte,Double> B2D
Преобразует byteVal в (double)byteVal.

B2F

public static final VectorOperators.Conversion<Byte,Float> B2F
Преобразует byteVal в (float)byteVal.

B2I

public static final VectorOperators.Conversion<Byte,Integer> B2I
Преобразует byteVal в (int)byteVal.

B2L

public static final VectorOperators.Conversion<Byte,Long> B2L
Преобразует byteVal в (long)byteVal.

B2S

public static final VectorOperators.Conversion<Byte,Short> B2S
Преобразует byteVal в (short)byteVal.

D2B

public static final VectorOperators.Conversion<Double,Byte> D2B
Преобразует doubleVal в (byte)doubleVal.

D2F

public static final VectorOperators.Conversion<Double,Float> D2F
Преобразует doubleVal в (float)doubleVal.

D2I

public static final VectorOperators.Conversion<Double,Integer> D2I
Преобразует doubleVal в (int)doubleVal.

D2L

public static final VectorOperators.Conversion<Double,Long> D2L
Преобразует doubleVal в (long)doubleVal.

D2S

public static final VectorOperators.Conversion<Double,Short> D2S
Преобразует doubleVal в (short)doubleVal.

F2B

public static final VectorOperators.Conversion<Float,Byte> F2B
Преобразует floatVal в (byte)floatVal.

F2D

public static final VectorOperators.Conversion<Float,Double> F2D
Преобразует floatVal в (double)floatVal.

F2I

public static final VectorOperators.Conversion<Float,Integer> F2I
Преобразует floatVal в (int)floatVal.

F2L

public static final VectorOperators.Conversion<Float,Long> F2L
Преобразует floatVal в (long)floatVal.

F2S

public static final VectorOperators.Conversion<Float,Short> F2S
Преобразует floatVal в (short)floatVal.

I2B

public static final VectorOperators.Conversion<Integer,Byte> I2B
Преобразует intVal в (byte)intVal.

I2D

public static final VectorOperators.Conversion<Integer,Double> I2D
Преобразует intVal в (double)intVal.

I2F

public static final VectorOperators.Conversion<Integer,Float> I2F
Преобразует intVal в (float)intVal.

I2L

public static final VectorOperators.Conversion<Integer,Long> I2L
Преобразует intVal в (long)intVal.

I2S

public static final VectorOperators.Conversion<Integer,Short> I2S
Преобразует intVal в (short)intVal.

L2B

public static final VectorOperators.Conversion<Long,Byte> L2B
Преобразует longVal в (byte)longVal.

L2D

public static final VectorOperators.Conversion<Long,Double> L2D
Преобразует longVal в (double)longVal.

L2F

public static final VectorOperators.Conversion<Long,Float> L2F
Преобразует longVal в (float)longVal.

L2I

public static final VectorOperators.Conversion<Long,Integer> L2I
Преобразует longVal в (int)longVal.

L2S

public static final VectorOperators.Conversion<Long,Short> L2S
Преобразует longVal в (short)longVal.

S2B

public static final VectorOperators.Conversion<Short,Byte> S2B
Преобразует shortVal в (byte)shortVal.

S2D

public static final VectorOperators.Conversion<Short,Double> S2D
Преобразует shortVal в (double)shortVal.

S2F

public static final VectorOperators.Conversion<Short,Float> S2F
Преобразует shortVal в (float)shortVal.

S2I

public static final VectorOperators.Conversion<Short,Integer> S2I
Преобразует shortVal в (int)shortVal.

S2L

public static final VectorOperators.Conversion<Short,Long> S2L
Преобразует shortVal в (long)shortVal.

REINTERPRET_D2L

public static final VectorOperators.Conversion<Double,Long> REINTERPRET_D2L
Интерпретирует биты doubleVal как long. Как если бы использовался Double.doubleToRawLongBits(double)

REINTERPRET_F2I

public static final VectorOperators.Conversion<Float,Integer> REINTERPRET_F2I
Интерпретирует биты floatVal как int. Как если бы использовался Float.floatToRawIntBits(float)

REINTERPRET_I2F

public static final VectorOperators.Conversion<Integer,Float> REINTERPRET_I2F
Интерпретирует биты intVal как float. Как если бы использовался Float.intBitsToFloat(int)

REINTERPRET_L2D

public static final VectorOperators.Conversion<Long,Double> REINTERPRET_L2D
Интерпретирует биты longVal как double. Как если бы использовался Double.longBitsToDouble(long)

ZERO_EXTEND_B2I

public static final VectorOperators.Conversion<Byte,Integer> ZERO_EXTEND_B2I
Расширяет byteVal нулями до int.

ZERO_EXTEND_B2L

public static final VectorOperators.Conversion<Byte,Long> ZERO_EXTEND_B2L
Расширяет byteVal нулями до long.

ZERO_EXTEND_B2S

public static final VectorOperators.Conversion<Byte,Short> ZERO_EXTEND_B2S
Расширяет byteVal нулями до short.

ZERO_EXTEND_I2L

public static final VectorOperators.Conversion<Integer,Long> ZERO_EXTEND_I2L
Расширяет intVal нулями до long.

ZERO_EXTEND_S2I

public static final VectorOperators.Conversion<Short,Integer> ZERO_EXTEND_S2I
Расширяет shortVal нулями до int.

ZERO_EXTEND_S2L

public static final VectorOperators.Conversion<Short,Long> ZERO_EXTEND_S2L
Расширяет shortVal нулями до long.

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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://docs.oracle.com/en/java/javase/25/docs/api/jdk.incubator.vector/jdk/incubator/vector/VectorOperators.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API