Spec-Zone.ru › OpenJDK 17

Класс ShortBuffer

java.lang.Object
java.nio.Buffer
java.nio.ShortBuffer
Все реализуемые интерфейсы:
Comparable<ShortBuffer>
public abstract class ShortBuffer extends Buffer implements Comparable<ShortBuffer>
Буфер коротких целых чисел.

Этот класс определяет четыре категории операций с буферами коротких целых чисел:

  • Абсолютные и относительные методы get и put для чтения и записи отдельных коротких целых чисел;

  • Абсолютные и относительные методы bulk get для передачи последовательных серий коротких целых чисел из этого буфера в массив; и

  • Абсолютные и относительные методы bulk put для передачи последовательных серий коротких целых чисел из массива коротких целых чисел {#if[char]?, строки,} или другого буфера коротких целых чисел в этот буфер;{#if[!byte]? и}

  • Метод для compacting буфера коротких целых чисел.

Буферы коротких целых чисел могут быть созданы либо с помощью allocation, который выделяет место для содержимого буфера, либо с помощью wrapping существующего массива коротких целых чисел {#if[char]?или строки} в буфер, либо путём создания представления существующего буфера байтов.

Как и буфер байтов, буфер коротких целых чисел может быть либо прямым, либо непрямым. Буфер коротких целых чисел, созданный с помощью методов этого класса, будет непрямым. Буфер коротких целых чисел, созданный как представление буфера байтов, будет прямым только в том случае, если сам буфер байтов является прямым. Можно определить является ли буфер коротких целых чисел прямым, вызвав метод isDirect.

Методы в этом классе, которые не возвращают никаких других значений, возвращают буфер, на котором они были вызваны. Это позволяет цепочке вызовов методов.

С тех пор:
1.4

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

Модификатор и тип Метод Описание
static ShortBuffer allocate(int capacity)
Выделяет новый буфер коротких целых чисел.
final short[] array()
Возвращает массив коротких целых чисел, который является основой этого буфера (необязательная операция).
final int arrayOffset()
Возвращает смещение в массиве, лежащем в основе этого буфера, первого элемента буфера (необязательная операция).
abstract ShortBuffer asReadOnlyBuffer()
Создаёт новый, только для чтения, буфер коротких целых чисел, который разделяет содержимое этого буфера.
final ShortBuffer clear()
Очищает этот буфер.
abstract ShortBuffer compact()
Уплотняет этот буфер (необязательная операция).
int compareTo(ShortBuffer that)
Сравнивает этот буфер с другим.
abstract ShortBuffer duplicate()
Создаёт новый буфер коротких целых чисел, который разделяет содержимое этого буфера.
boolean equals(Object ob)
Определяет, равен ли этот буфер другому объекту.
final ShortBuffer flip()
Переворачивает этот буфер.
abstract short get()
Относительный метод get.
abstract short get(int index)
Абсолютный метод get.
ShortBuffer get(int index, short[] dst)
Абсолютный метод get для блоков данных.
ShortBuffer get(int index, short[] dst, int offset, int length)
Абсолютный метод get для блоков данных.
ShortBuffer get(short[] dst)
Относительный метод get для блоков данных.
ShortBuffer get(short[] dst, int offset, int length)
Относительный метод get для блоков данных.
final boolean hasArray()
Определяет, поддерживается ли этот буфер доступным массивом коротких целых чисел.
int hashCode()
Возвращает текущий хэш-код этого буфера.
abstract boolean isDirect()
Определяет, является ли этот буфер коротких целых чисел прямым.
final ShortBuffer limit(int newLimit)
Устанавливает ограничение этого буфера.
final ShortBuffer mark()
Устанавливает метку этого буфера в его позиции.
int mismatch(ShortBuffer that)
Находит и возвращает относительный индекс первого несовпадения между этим буфером и заданным буфером.
abstract ByteOrder order()
Получает порядок байтов этого буфера.
final ShortBuffer position(int newPosition)
Устанавливает позицию этого буфера.
abstract ShortBuffer put(int index, short s)
Абсолютный метод put (необязательная операция).
ShortBuffer put(int index, short[] src)
Абсолютный метод put для блоков данных (необязательная операция).
ShortBuffer put(int index, short[] src, int offset, int length)
Абсолютный метод put для блоков данных (необязательная операция).
ShortBuffer put(int index, ShortBuffer src, int offset, int length)
Абсолютный метод put для блоков данных (необязательная операция).
abstract ShortBuffer put(short s)
Относительный метод put (необязательная операция).
final ShortBuffer put(short[] src)
Относительный метод put для блоков данных (необязательная операция).
ShortBuffer put(short[] src, int offset, int length)
Относительный метод put для блоков данных (необязательная операция).
ShortBuffer put(ShortBuffer src)
Относительный метод put для блоков данных (необязательная операция).
final ShortBuffer reset()
Возвращает позицию буфера к ранее помеченной позиции.
final ShortBuffer rewind()
Перемотка этого буфера.
abstract ShortBuffer slice()
Создаёт новый буфер коротких целых чисел, чьё содержимое является разделяемой подпоследовательностью содержимого этого буфера.
abstract ShortBuffer slice(int index, int length)
Создаёт новый буфер коротких целых чисел, чьё содержимое является разделяемой подпоследовательностью содержимого этого буфера.
String toString()
Возвращает строку, обобщающую состояние этого буфера.
static ShortBuffer wrap(short[] array)
Оборачивает массив коротких целых чисел в буфер.
static ShortBuffer wrap(short[] array, int offset, int length)
Оборачивает массив коротких целых чисел в буфер.

Методы, унаследованные от класса java.nio.Buffer

capacity, hasRemaining, isReadOnly, limit, position, remaining

Методы, унаследованные от класса java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

Подробное описание методов

allocate

public static ShortBuffer allocate(int capacity)
Выделяет новый короткий буфер.

Позиция нового буфера будет равна нулю, его предел будет равен его емкости, метка будет неопределенной, каждый из его элементов будет инициализирован нулем, а порядок байтов будет соответствовать native order базового оборудования. Он будет иметь backing array, и его array offset будет равен нулю.

Параметры:
capacity - Емкость нового буфера в коротких целых
Возвращает:
Новый короткий буфер
Исключение:
IllegalArgumentException - Если capacity является отрицательным целым числом

wrap

public static ShortBuffer wrap(short[] array, int offset, int length)
Оборачивает массив short в буфер.

Новый буфер будет использовать заданный массив short в качестве основы; то есть изменения в буфере приведут к изменению массива и наоборот. Емкость нового буфера будет array.length, его позиция будет offset, его предел будет offset + length, метка будет неопределенной, а порядок байтов будет соответствовать native order базового оборудования. Его backing array будет заданным массивом, а его array offset будет равен нулю.

Параметры:
array - Массив, который будет основой для нового буфера
offset - Смещение подмассива, используемого для работы; должно быть неотрицательным и не превышать array.length. Позиция нового буфера будет установлена в это значение.
length - Длина подмассива, используемого для работы; должно быть неотрицательным и не превышать array.length - offset. Предел нового буфера будет установлен в offset + length.
Возвращает:
Новый короткий буфер
Исключение:
IndexOutOfBoundsException - Если условия, накладываемые на параметры offset и length не выполняются

wrap

public static ShortBuffer wrap(short[] array)
Оборачивает массив short в буфер.

Новый буфер будет использовать заданный массив short в качестве основы; то есть изменения в буфере приведут к изменению массива и наоборот. Емкость и предел нового буфера будут array.length, его позиция будет равна нулю, метка будет неопределенной, а порядок байтов будет соответствовать native order базового оборудования. Его backing array будет заданным массивом, а его array offset будет равен нулю.

Параметры:
array - Массив, который будет основой для этого буфера
Возвращает:
Новый короткий буфер

slice

public abstract ShortBuffer slice()
Создает новый короткий буфер, содержащий совместно используемый подпоследовательность содержимого этого буфера.

Содержимое нового буфера начнется с текущей позиции этого буфера. Изменения в содержимом этого буфера будут видны в новом буфере, и наоборот; значения позиции, предела и метки двух буферов будут независимы.

Позиция нового буфера будет равна нулю, его емкость и предел будут равны числу оставшихся коротких целых в этом буфере, метка будет неопределенной, а порядок байтов будет таким же, как у этого буфера. Новый буфер будет прямым, если и только если этот буфер является прямым, и он будет только для чтения, если и только если этот буфер является только для чтения.

Определено в:
slice в классе Buffer
Возвращает:
Новый короткий буфер

slice

public abstract ShortBuffer slice(int index, int length)
Создает новый короткий буфер, содержащий совместно используемый подпоследовательность содержимого этого буфера.

Содержимое нового буфера начнется с позиции index в этом буфере и будет содержать length элементов. Изменения в содержимом этого буфера будут видны в новом буфере, и наоборот; значения позиции, предела и метки двух буферов будут независимы.

Позиция нового буфера будет равна нулю, его емкость и предел будут равны length, метка будет неопределенной, а порядок байтов будет таким же, как у этого буфера. Новый буфер будет прямым, если и только если этот буфер является прямым, и он будет только для чтения, если и только если этот буфер является только для чтения.

Определено в:
slice в классе Buffer
Параметры:
index - Позиция в этом буфере, с которой начнется содержимое нового буфера; должна быть неотрицательной и не должна превышать limit()
length - Количество элементов, которое будет содержать новый буфер; должно быть неотрицательным и не превышать limit() - index
Возвращает:
Новый буфер
Исключение:
IndexOutOfBoundsException - Если index отрицательно или больше limit(), length отрицательно или length > limit() - index
С:
13

duplicate

public abstract ShortBuffer duplicate()
Создает новый короткий буфер, который разделяет содержимое этого буфера.

Содержимое нового буфера будет таким же, как у этого буфера. Изменения в содержимом этого буфера будут видны в новом буфере, и наоборот; значения позиции, предела и метки двух буферов будут независимы.

Емкость, предел, позиция, метка и порядок байтов нового буфера будут идентичны значениям этого буфера. Новый буфер будет прямым, если и только если этот буфер является прямым, и он будет только для чтения, если и только если этот буфер является только для чтения.

Определено в:
duplicate в классе Buffer
Возвращает:
Новый короткий буфер

asReadOnlyBuffer

public abstract ShortBuffer asReadOnlyBuffer()
Создает новый, только для чтения короткий буфер, который разделяет содержимое этого буфера.

Содержимое нового буфера будет таким же, как у этого буфера. Изменения в содержимом этого буфера будут видны в новом буфере; однако сам новый буфер будет только для чтения и не позволит изменять общее содержимое. Значения позиции, предела и метки двух буферов будут независимы.

Емкость, предел, позиция, метка и порядок байтов нового буфера будут идентичны значениям этого буфера.

Если этот буфер сам по себе только для чтения, то этот метод ведет себя точно так же, как метод duplicate.

Возвращает:
Новый короткий буфер, только для чтения

get

public abstract short get()
Относительный метод get. Читает короткий целый в текущей позиции буфера и затем увеличивает позицию.
Возвращает:
Короткий целый в текущей позиции буфера
Исключение:
BufferUnderflowException - Если текущая позиция буфера не меньше его предела

put

public abstract ShortBuffer put(short s)
Относительный метод put (необязательная операция).

Записывает заданный короткий целый в этот буфер по текущей позиции, а затем увеличивает позицию.

Параметры:
s - Короткий целый для записи
Возвращает:
Этот буфер
Исключение:
BufferOverflowException - Если текущая позиция этого буфера не меньше его предела
ReadOnlyBufferException - Если этот буфер только для чтения

get

public abstract short get(int index)
Абсолютный метод get. Читает короткий целый по заданному индексу.
Параметры:
index - Индекс, по которому будет считан короткий целый
Возвращает:
Короткий целый по заданному индексу
Исключение:
IndexOutOfBoundsException - Если index отрицательно или не меньше предела буфера

put

public abstract ShortBuffer put(int index, short s)
Абсолютный метод put (необязательная операция).

Записывает заданный короткий целый в этот буфер по заданному индексу.

Параметры:
index - Индекс, по которому будет записан короткий целый
s - Значение короткого целого для записи
Возвращает:
Этот буфер
Исключение:
IndexOutOfBoundsException - Если index отрицательно или не меньше предела буфера
ReadOnlyBufferException - Если этот буфер только для чтения

get

public ShortBuffer get(short[] dst, int offset, int length)
Относительный метод пакетного чтения get.

Этот метод копирует короткие целые из этого буфера в заданный массив-приемник. Если в буфере остается меньше коротких целых, чем требуется для выполнения запроса, то есть, если length > remaining(), то короткие целые не копируются, и выбрасывается исключение BufferUnderflowException.

В противном случае, этот метод копирует length коротких целых из этого буфера в заданный массив, начиная с текущей позиции этого буфера и заданного смещения в массиве. Позиция этого буфера увеличивается на length.

Другими словами, вызов этого метода в виде src.get(dst, off, len) имеет точно такой же эффект, как цикл


     for (int i = off; i < off + len; i++)
         dst[i] = src.get();
 
за исключением того, что он сначала проверяет, достаточно ли коротких целых в этом буфере, и потенциально может быть гораздо эффективнее.
Параметры:
dst - Массив, в который будут записаны короткие целые
offset - Смещение в массиве первой короткой целой, которая будет записана; должно быть неотрицательным и не превышать dst.length
length - Максимальное количество коротких целых, которое будет записано в заданный массив; должно быть неотрицательным и не превышать dst.length - offset
Возвращает:
Этот буфер
Исключение:
BufferUnderflowException - Если в этом буфере остается меньше, чем length коротких целых
IndexOutOfBoundsException - Если условия, накладываемые на параметры offset и length не выполняются

get

public ShortBuffer get(short[] dst)
Метод get для относительного копирования.

Этот метод копирует короткие целые числа из этого буфера в заданный массив назначения. Вызов этого метода в форме src.get(a) ведет себя точно так же, как вызов

     src.get(a, 0, a.length) 
Параметры:
dst - Массив назначения
Возвращает:
Этот буфер
Исключения:
BufferUnderflowException - Если в этом буфере осталось меньше length коротких целых чисел

get

public ShortBuffer get(int index, short[] dst, int offset, int length)
Метод get для абсолютного копирования.

Этот метод копирует length коротких целых чисел из этого буфера в заданный массив, начиная с заданного индекса в этом буфере и с заданного смещения в массиве. Позиция этого буфера не изменяется.

Вызов этого метода в форме src.get(index, dst, offset, length) имеет точно такой же эффект, как следующий цикл, за исключением того, что он сначала проверяет согласованность предоставленных параметров и потенциально является гораздо более эффективным:


     for (int i = offset, j = index; i < offset + length; i++, j++)
         dst[i] = src.get(j);
 
Параметры:
index - Индекс в этом буфере, с которого будет считано первое короткое целое число; должно быть неотрицательным и меньше limit()
dst - Массив назначения
offset - Смещение в массиве первого короткого целого числа, которое будет записано; должно быть неотрицательным и меньше dst.length
length - Количество коротких целых чисел, которые должны быть записаны в заданный массив; должно быть неотрицательным и не больше меньшего из limit() - index и dst.length - offset
Возвращает:
Этот буфер
Исключения:
IndexOutOfBoundsException - Если условия на параметры index, offset, и length не выполняются
С:
13

get

public ShortBuffer get(int index, short[] dst)
Метод get для абсолютного копирования.

Этот метод копирует короткие целые числа из этого буфера в заданный массив назначения. Позиция этого буфера не изменяется. Вызов этого метода в форме src.get(index, dst) ведет себя точно так же, как вызов:

     src.get(index, dst, 0, dst.length) 
Параметры:
index - Индекс в этом буфере, с которого будет считано первое короткое целое число; должно быть неотрицательным и меньше limit()
dst - Массив назначения
Возвращает:
Этот буфер
Исключения:
IndexOutOfBoundsException - Если index отрицательно, не меньше limit(), или limit() - index < dst.length
С:
13

put

public ShortBuffer put(ShortBuffer src)
Метод put для относительного копирования (необязательная операция).

Этот метод копирует оставшиеся короткие целые числа из заданного буфера-источника в этот буфер. Если оставшихся коротких целых чисел в буфере-источнике больше, чем в этом буфере, то есть, если src.remaining() > remaining(), то короткие целые числа не копируются, и выбрасывается исключение BufferOverflowException.

В противном случае, этот метод копирует n = src.remaining() коротких целых чисел из данного буфера в этот буфер, начиная с текущей позиции каждого буфера. Затем позиции обоих буферов увеличиваются на n.

Другими словами, вызов этого метода в форме dst.put(src) имеет точно такой же эффект, как цикл

     while (src.hasRemaining())
         dst.put(src.get()); 
за исключением того, что он сначала проверяет, достаточно ли места в этом буфере, и потенциально является гораздо более эффективным. Если этот буфер и буфер-источник используют один и тот же базовый массив или память, то результат будет таким, как если бы элементы-источники сначала были скопированы в промежуточное место, прежде чем быть записанными в этот буфер.
Параметры:
src - Буфер-источник, из которого считываются короткие целые числа; не должен совпадать с этим буфером
Возвращает:
Этот буфер
Исключения:
BufferOverflowException - Если в этом буфере недостаточно места для оставшихся коротких целых чисел в буфере-источнике
IllegalArgumentException - Если буфер-источник совпадает с этим буфером
ReadOnlyBufferException - Если этот буфер только для чтения

put

public ShortBuffer put(int index, ShortBuffer src, int offset, int length)
Метод put для абсолютного копирования (необязательная операция).

Этот метод копирует length коротких целых чисел в этот буфер из заданного буфера-источника, начиная с заданного offset в буфере-источнике и заданного index в этом буфере. Позиции обоих буферов не изменяются.

Другими словами, вызов этого метода в форме dst.put(index, src, offset, length) имеет точно такой же эффект, как цикл


 for (int i = offset, j = index; i < offset + length; i++, j++)
     dst.put(j, src.get(i));
 
за исключением того, что он сначала проверяет согласованность предоставленных параметров и потенциально является гораздо более эффективным. Если этот буфер и буфер-источник используют один и тот же базовый массив или память, то результат будет таким, как если бы элементы-источники сначала были скопированы в промежуточное место, прежде чем быть записанными в этот буфер.
Параметры:
index - Индекс в этом буфере, по которому будет записано первое короткое целое число; должно быть неотрицательным и меньше limit()
src - Буфер-источник, из которого считываются короткие целые числа
offset - Индекс в буфере-источнике первого короткого целого числа для чтения; должно быть неотрицательным и меньше src.limit()
length - Количество коротких целых чисел для чтения из данного буфера; должно быть неотрицательным и не больше меньшего из limit() - index и src.limit() - offset
Возвращает:
Этот буфер
Исключения:
IndexOutOfBoundsException - Если условия на параметры index, offset, и length не выполняются
ReadOnlyBufferException - Если этот буфер только для чтения
С:
16

put

public ShortBuffer put(short[] src, int offset, int length)
Метод put для относительного копирования (необязательная операция).

Этот метод копирует короткие целые числа в этот буфер из заданного массива-источника. Если коротких целых чисел для копирования из массива больше, чем осталось в этом буфере, то есть, если length > remaining(), то короткие целые числа не копируются, и выбрасывается исключение BufferOverflowException.

В противном случае, этот метод копирует length коротких целых чисел из заданного массива в этот буфер, начиная с заданного смещения в массиве и текущей позиции этого буфера. Позиция этого буфера затем увеличивается на length.

Другими словами, вызов этого метода в форме dst.put(src, off, len) имеет точно такой же эффект, как цикл


     for (int i = off; i < off + len; i++)
         dst.put(src[i]);
 
за исключением того, что он сначала проверяет, достаточно ли места в этом буфере.
Параметры:
src - Массив-источник, из которого считываются короткие целые числа
offset - Смещение в массиве первого короткого целого числа для чтения; должно быть неотрицательным и не больше src.length
length - Количество коротких целых чисел для чтения из данного массива; должно быть неотрицательным и не больше src.length - offset
Возвращает:
Этот буфер
Исключения:
BufferOverflowException - Если в этом буфере недостаточно места
IndexOutOfBoundsException - Если условия на параметры offset и length не выполняются
ReadOnlyBufferException - Если этот буфер только для чтения

put

public final ShortBuffer put(short[] src)
Метод put для относительного копирования (необязательная операция).

Этот метод копирует все содержимое заданного массива коротких целых чисел в этот буфер. Вызов этого метода в форме dst.put(a) ведет себя точно так же, как вызов

     dst.put(a, 0, a.length) 
Параметры:
src - Массив-источник
Возвращает:
Этот буфер
Исключения:
BufferOverflowException - Если в этом буфере недостаточно места
ReadOnlyBufferException - Если этот буфер только для чтения

put

public ShortBuffer put(int index, short[] src, int offset, int length)
Метод put для абсолютного копирования (необязательная операция).

Этот метод копирует length коротких целых чисел из заданного массива, начиная с заданного смещения в массиве и заданного индекса в этом буфере. Позиция этого буфера не изменяется.

Вызов этого метода в форме dst.put(index, src, offset, length) имеет точно такой же эффект, как следующий цикл, за исключением того, что он сначала проверяет согласованность предоставленных параметров и потенциально является гораздо более эффективным:


     for (int i = offset, j = index; i < offset + length; i++, j++)
         dst.put(j, src[i]);
 
Параметры:
index - Индекс в этом буфере, по которому будет записано первое короткое целое число; должно быть неотрицательным и меньше limit()
src - Массив-источник, из которого считываются короткие целые числа
offset - Смещение в массиве первого короткого целого числа для чтения; должно быть неотрицательным и меньше src.length
length - Количество коротких целых чисел для чтения из данного массива; должно быть неотрицательным и не больше меньшего из limit() - index и src.length - offset
Возвращает:
Этот буфер
Исключения:
IndexOutOfBoundsException - Если условия на параметры index, offset, и length не выполняются
ReadOnlyBufferException - Если этот буфер только для чтения
С:
13

put

public ShortBuffer put(int index, short[] src)
Метод put для абсолютного объёма данных (необязательная операция).

Этот метод копирует значения типа short из заданного исходного массива в этот буфер. Позиция этого буфера не изменяется. Вызов этого метода в форме dst.put(index, src) ведет себя точно так же, как вызов:

     dst.put(index, src, 0, src.length); 
Параметры:
index - Индекс в этом буфере, с которого начнется запись первого значения типа short; должен быть неотрицательным и меньше limit()
src - Массив, из которого будут считываться значения типа short
Возвращаемое значение:
Этот буфер
Исключения:
IndexOutOfBoundsException - Если index отрицательно, не меньше limit(), или limit() - index < src.length
ReadOnlyBufferException - Если этот буфер только для чтения
С версии:
13

hasArray

public final boolean hasArray()
Указывает, поддерживается ли этот буфер массивом типа short с доступом к нему.

Если этот метод возвращает true, то методы array и arrayOffset могут быть безопасно вызваны.

Определено в:
hasArray в классе Buffer
Возвращаемое значение:
true если и только если этот буфер поддерживается массивом и не является только для чтения

array

public final short[] array()
Возвращает массив типа short, который поддерживает этот буфер (необязательная операция).

Изменения в содержимом этого буфера приведут к изменению содержимого возвращенного массива, и наоборот.

Вызовите метод hasArray перед вызовом этого метода, чтобы убедиться, что этот буфер имеет доступный поддерживающий массив.

Определено в:
array в классе Buffer
Возвращаемое значение:
Массив, поддерживающий этот буфер
Исключения:
ReadOnlyBufferException - Если этот буфер поддерживается массивом, но является только для чтения
UnsupportedOperationException - Если этот буфер не поддерживается доступным массивом

arrayOffset

public final int arrayOffset()
Возвращает смещение в поддерживающем массиве этого буфера первого элемента буфера (необязательная операция).

Если этот буфер поддерживается массивом, то позиция буфера p соответствует индексу массива p + arrayOffset().

Вызовите метод hasArray перед вызовом этого метода, чтобы убедиться, что этот буфер имеет доступный поддерживающий массив.

Определено в:
arrayOffset в классе Buffer
Возвращаемое значение:
Смещение в массиве этого буфера первого элемента буфера
Исключения:
ReadOnlyBufferException - Если этот буфер поддерживается массивом, но является только для чтения
UnsupportedOperationException - Если этот буфер не поддерживается доступным массивом

position

public final ShortBuffer position(int newPosition)
Устанавливает позицию этого буфера. Если метка определена и больше новой позиции, то она отбрасывается.
Переопределяет:
position в классе Buffer
Параметры:
newPosition - Новое значение позиции; должно быть неотрицательным и не больше текущего предела
Возвращаемое значение:
Этот буфер

limit

public final ShortBuffer limit(int newLimit)
Устанавливает предел этого буфера. Если позиция больше нового предела, то она устанавливается равной новому пределу. Если метка определена и больше нового предела, то она отбрасывается.
Переопределяет:
limit в классе Buffer
Параметры:
newLimit - Новое значение предела; должно быть неотрицательным и не больше емкости этого буфера
Возвращаемое значение:
Этот буфер

mark

public final ShortBuffer mark()
Устанавливает метку этого буфера в его позиции.
Переопределяет:
mark в классе Buffer
Возвращаемое значение:
Этот буфер

reset

public final ShortBuffer reset()
Возвращает позицию этого буфера к ранее помеченной позиции.

Вызов этого метода не изменяет и не отбрасывает значение метки.

Переопределяет:
reset в классе Buffer
Возвращаемое значение:
Этот буфер

clear

public final ShortBuffer clear()
Очищает этот буфер. Позиция устанавливается в ноль, предел устанавливается в емкость, и метка отбрасывается.

Вызовите этот метод перед использованием последовательности операций чтения из канала или операций put для заполнения этого буфера. Например:

 buf.clear();     // Prepare buffer for reading
 in.read(buf);    // Read data

Этот метод не фактически стирает данные в буфере, но он назван так, как будто он это делает, потому что он чаще всего используется в ситуациях, в которых это может быть равносильно.

Переопределяет:
clear в классе Buffer
Возвращаемое значение:
Этот буфер

flip

public final ShortBuffer flip()
Переворачивает этот буфер. Предел устанавливается в текущую позицию, а затем позиция устанавливается в ноль. Если метка определена, то она отбрасывается.

После последовательности операций чтения из канала или операций put вызовите этот метод для подготовки к последовательности операций записи в канал или относительных операций get. Например:

 buf.put(magic);    // Prepend header
 in.read(buf);      // Read data into rest of buffer
 buf.flip();        // Flip buffer
 out.write(buf);    // Write header + data to channel

Этот метод часто используется в сочетании с методом compact при передаче данных из одного места в другое.

Переопределяет:
flip в классе Buffer
Возвращаемое значение:
Этот буфер

rewind

public final ShortBuffer rewind()
Перематывает этот буфер. Позиция устанавливается в ноль, и метка отбрасывается.

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

 out.write(buf);    // Write remaining data
 buf.rewind();      // Rewind buffer
 buf.get(array);    // Copy data into array
Переопределяет:
rewind в классе Buffer
Возвращаемое значение:
Этот буфер

compact

public abstract ShortBuffer compact()
Сжимает этот буфер (необязательная операция).

Значения типа short между текущей позицией буфера и его пределом, если таковые имеются, копируются в начало буфера. То есть, значение типа short с индексом p = position() копируется в индекс ноль, значение типа short с индексом p + 1 копируется в индекс один, и так далее, пока значение типа short с индексом limit() - 1 копируется в индекс n = limit() - 1 - p. Позиция буфера затем устанавливается в n+1, а его предел устанавливается в его емкость. Метка, если определена, отбрасывается.

Позиция буфера устанавливается в число скопированных значений типа short, а не в ноль, чтобы вызов этого метода мог быть сразу после вызова другого метода относительного put.

Возвращаемое значение:
Этот буфер
Исключения:
ReadOnlyBufferException - Если этот буфер только для чтения

isDirect

public abstract boolean isDirect()
Указывает, является ли этот буфер типа short прямым.
Определено в:
isDirect в классе Buffer
Возвращаемое значение:
true если и только если этот буфер прямой

toString

public String toString()
Возвращает строку, обобщающую состояние этого буфера.
Переопределяет:
toString в классе Object
Возвращаемое значение:
Строка-резюме

hashCode

public int hashCode()
Возвращает текущий код хэширования этого буфера.

Код хэширования буфера типа short зависит только от оставшихся элементов; то есть, от элементов от position() до, и включая, элемент с индексом limit() - 1.

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

Переопределяет:
hashCode в классе Object
Возвращаемое значение:
Текущий код хэширования этого буфера
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(java.lang.Object)

equals

public boolean equals(Object ob)
Указывает, равен ли этот буфер другому объекту.

Два буфера типа short равны тогда и только тогда, когда:

  1. У них одинаковый тип элементов,

  2. У них одинаковое количество оставшихся элементов, и

  3. Две последовательности оставшихся элементов, рассматриваемые независимо от своих начальных позиций, точечно равны.

Буфер типа short не равен никакому другому типу объекта.

Переопределяет:
equals в классе Object
Параметры:
ob - Объект, с которым должен быть сравнен этот буфер
Возвращаемое значение:
true если и только если этот буфер равен данному объекту
См. также:
  • Object.hashCode()
  • HashMap

compareTo

public int compareTo(ShortBuffer that)
Сравнивает этот буфер с другим.

Два буфера short сравниваются путём лексикографического сравнения последовательностей оставшихся элементов, не учитывая начальную позицию каждой последовательности в соответствующем буфере. Пары элементов short сравниваются так, как если бы вызывался Short.compare(short,short).

Буфер short не может быть сравнен с любым другим типом объекта.

Определено в:
compareTo в интерфейсе Comparable<ShortBuffer>
Параметры:
that - объект, с которым нужно сравнить.
Возвращает:
Отрицательное целое число, ноль или положительное целое число, если этот буфер меньше, равен или больше, чем заданный буфер

mismatch

public int mismatch(ShortBuffer that)
Находит и возвращает относительный индекс первого несовпадения между этим буфером и заданным буфером. Индекс относится к position каждого буфера и будет находиться в диапазоне от 0 (включительно) до меньшего из remaining элементов в каждом буфере (исключительно).

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

Параметры:
that - Буфер байтов, который нужно проверить на несовпадение с этим буфером
Возвращает:
Относительный индекс первого несовпадения между этим и заданным буфером, иначе -1, если несовпадения нет.
С:
11

order

public abstract ByteOrder order()
Получает порядок байтов этого буфера.

Порядок байтов буфера short, созданного путём выделения памяти или оборачивания существующего массива short , представляет собой native order базового оборудования. Порядок байтов буфера short, созданного как представление буфера байтов, такой же, как у буфера байтов на момент создания представления.

Возвращает:
Порядок байтов этого буфера

© 1993, 2021, 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/17/docs/api/java.base/java/nio/ShortBuffer.html

Spec-Zone.ru

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