Spec-Zone.ru › OpenJDK 27

Класс DataBufferDouble

java.lang.Object
java.awt.image.DataBuffer
java.awt.image.DataBufferDouble
public final class DataBufferDouble extends DataBuffer
Этот класс расширяет DataBuffer и хранит данные во внутреннем представлении double.

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

Начиная с:
1.4

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

Поля, объявленные в классе DataBuffer

banks, dataType, offset, offsets, size, TYPE_BYTE, TYPE_DOUBLE, TYPE_FLOAT, TYPE_INT, TYPE_SHORT, TYPE_UNDEFINED, TYPE_USHORT
Модификатор и тип Поле Описание
protected int banks
Количество банков в этом DataBuffer.
protected int dataType
Тип данных этого DataBuffer.
protected int offset
Смещение в банке по умолчанию (первом), откуда следует получить первый элемент.
protected int[] offsets
Смещения во всех банках.
protected int size
Доступный размер всех банков.
static final int TYPE_BYTE
Тег для данных типа unsigned byte.
static final int TYPE_DOUBLE
Тег для данных типа double.
static final int TYPE_FLOAT
Тег для данных типа float.
static final int TYPE_INT
Тег для данных типа int.
static final int TYPE_SHORT
Тег для данных типа signed short.
static final int TYPE_UNDEFINED
Тег для неопределённых данных.
static final int TYPE_USHORT
Тег для данных типа unsigned short.

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

Конструктор Описание
DataBufferDouble(double[][] dataArray, int size)
Создаёт double-based DataBuffer с указанными массивами данных.
DataBufferDouble(double[][] dataArray, int size, int[] offsets)
Создаёт double-based DataBuffer с указанными массивами данных, размером и смещениями для каждого банка.
DataBufferDouble(double[] dataArray, int size)
Создаёт double-based DataBuffer с указанным массивом данных.
DataBufferDouble(double[] dataArray, int size, int offset)
Создаёт double-based DataBuffer с указанным массивом данных.
DataBufferDouble(int size)
Создаёт double-based DataBuffer указанного размера.
DataBufferDouble(int size, int numBanks)
Создаёт double-based DataBuffer с указанным количеством банков, каждый из которых имеет заданный размер.

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

Модификатор и тип Метод Описание
double[][] getBankData()
Возвращает массивы данных для всех банков.
double[] getData()
Возвращает массив данных double по умолчанию (первого банка).
double[] getData(int bank)
Возвращает массив данных указанного банка.
int getElem(int i)
Возвращает запрошенный элемент массива данных из первого (банка по умолчанию) банка как int.
int getElem(int bank, int i)
Возвращает запрошенный элемент массива данных из указанного банка как int.
double getElemDouble(int i)
Возвращает запрошенный элемент массива данных из первого (банка по умолчанию) банка как double.
double getElemDouble(int bank, int i)
Возвращает запрошенный элемент массива данных из указанного банка как double.
float getElemFloat(int i)
Возвращает запрошенный элемент массива данных из первого (банка по умолчанию) банка как float.
float getElemFloat(int bank, int i)
Возвращает запрошенный элемент массива данных из указанного банка как float.
void setElem(int i, int val)
Устанавливает запрошенный элемент массива данных в первом (банке по умолчанию) банке в заданное значение int.
void setElem(int bank, int i, int val)
Устанавливает запрошенный элемент массива данных в указанном банке в заданное значение int.
void setElemDouble(int i, double val)
Устанавливает запрошенный элемент массива данных в первом (банке по умолчанию) банке в заданное значение double.
void setElemDouble(int bank, int i, double val)
Устанавливает запрошенный элемент массива данных в указанном банке в заданное значение double.
void setElemFloat(int i, float val)
Устанавливает запрошенный элемент массива данных в первом (банке по умолчанию) банке в заданное значение float.
void setElemFloat(int bank, int i, float val)
Устанавливает запрошенный элемент массива данных в указанном банке в заданное значение float.

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

getDataType, getDataTypeSize, getNumBanks, getOffset, getOffsets, getSize
Модификатор и тип Метод Описание
int getDataType()
Возвращает тип данных этого DataBuffer.
static int getDataTypeSize(int type)
Возвращает размер типа данных (в битах) для указанного тега типа данных.
int getNumBanks()
Возвращает количество банков в этом DataBuffer.
int getOffset()
Возвращает смещение банка по умолчанию в элементах массива.
int[] getOffsets()
Возвращает смещения всех банков в элементах массива.
int getSize()
Возвращает размер всех банков в элементах массива.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии.
Финализация объявлена устаревшей и будет удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Приостанавливает текущий поток до его пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Приостанавливает текущий поток до его пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Приостанавливает текущий поток до его пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

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

DataBufferDouble

public DataBufferDouble(int size)
Создает DataBuffer на основе double с заданным размером.
Параметры:
size — количество элементов в DataBuffer.
Исключения:
IllegalArgumentException — если size меньше или равно нулю.

DataBufferDouble

public DataBufferDouble(int size, int numBanks)
Создает DataBuffer на основе double с заданным количеством банков, каждый из которых имеет заданный размер.
Параметры:
size — количество элементов в каждом банке DataBuffer.
numBanks — количество банков в DataBuffer.
Исключения:
IllegalArgumentException — если size или numBanks меньше или равно нулю.

DataBufferDouble

public DataBufferDouble(double[] dataArray, int size)
Создает DataBuffer на основе double с заданным массивом данных. Для использования этим DataBuffer доступны только первые size элементов. Размер массива должен быть достаточным для хранения size элементов.

Обратите внимание, что объекты DataBuffer, созданные этим конструктором, могут быть несовместимы с оптимизациями производительности, используемыми некоторыми реализациями (например, кэшированием связанного изображения в видеопамяти).

Параметры:
dataArray — массив double для использования в качестве единственного и первого банка этого DataBuffer.
size — количество элементов массива, которые будут использоваться.
Исключения:
NullPointerException — если dataArray равен null.
IllegalArgumentException — если size меньше или равно нулю либо превышает длину dataArray.

DataBufferDouble

public DataBufferDouble(double[] dataArray, int size, int offset)
Создает DataBuffer на основе double с заданным массивом данных. Для использования этим DataBuffer доступны только элементы от offset до offset + size - 1. Размер массива должен быть достаточным для хранения offset + size элементов.

Обратите внимание, что объекты DataBuffer, созданные этим конструктором, могут быть несовместимы с оптимизациями производительности, используемыми некоторыми реализациями (например, кэшированием связанного изображения в видеопамяти).

Параметры:
dataArray — массив double для использования в качестве единственного и первого банка этого DataBuffer.
size — количество элементов массива, которые будут использоваться.
offset — смещение первого элемента массива, который будет использоваться.
Исключения:
NullPointerException — если dataArray равен null.
IllegalArgumentException — если size меньше или равно нулю, offset меньше нуля либо (offset + size) превышает длину dataArray.

DataBufferDouble

public DataBufferDouble(double[][] dataArray, int size)
Создает DataBuffer на основе double с заданными массивами данных. Для использования этим DataBuffer доступны только первые size элементов каждого массива. Количество банков будет равно to dataArray.length.

Обратите внимание, что объекты DataBuffer, созданные этим конструктором, могут быть несовместимы с оптимизациями производительности, используемыми некоторыми реализациями (например, кэшированием связанного изображения в видеопамяти).

Параметры:
dataArray — массив массивов double для использования в качестве банков этого DataBuffer.
size — количество элементов каждого массива, которые будут использоваться.
Исключения:
NullPointerException — если dataArray равен null.
IllegalArgumentException — если size меньше или равно нулю.
IllegalArgumentException — если dataArray не содержит ни одного банка.
NullPointerException — если какой-либо банк dataArray равен null.
IllegalArgumentException — если длина любого банка dataArray меньше size.

DataBufferDouble

public DataBufferDouble(double[][] dataArray, int size, int[] offsets)
Создает DataBuffer на основе double с заданными массивами данных, размером и смещениями для каждого банка. Количество банков равно dataArray.length. Размер каждого массива должен быть не меньше size плюс соответствующее смещение. Для каждого массива данных должна быть запись в массиве offsets.

Обратите внимание, что объекты DataBuffer, созданные этим конструктором, могут быть несовместимы с оптимизациями производительности, используемыми некоторыми реализациями (например, кэшированием связанного изображения в видеопамяти).

Параметры:
dataArray — массив массивов double для использования в качестве банков этого DataBuffer.
size — количество элементов каждого массива, которые будут использоваться.
offsets — массив целочисленных смещений, по одному для каждого банка.
Исключения:
IllegalArgumentException — если size меньше или равно нулю.
NullPointerException — если dataArray равен null.
NullPointerException — если какой-либо банк dataArray равен null.
IllegalArgumentException — если dataArray не содержит ни одного банка.
NullPointerException — если offsets равен null.
IllegalArgumentException — если какой-либо элемент offsets меньше нуля.
ArrayIndexOutOfBoundsException — если длины dataArray и offsets различаются.
IllegalArgumentException — если длина любого банка dataArray меньше (size + offsets[bankIndex]).

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

getData

public double[] getData()
Возвращает массив данных double по умолчанию (первый).

Обратите внимание, что вызов этого метода может привести к несовместимости объекта DataBuffer с оптимизациями производительности, используемыми некоторыми реализациями (например, кэшированием связанного изображения в видеопамяти).

Возвращает:
первый массив данных типа double.

getData

public double[] getData(int bank)
Возвращает массив данных для указанного банка.

Обратите внимание, что вызов этого метода может привести к несовместимости объекта DataBuffer с оптимизациями производительности, используемыми некоторыми реализациями (например, кэшированием связанного изображения в видеопамяти).

Параметры:
bank — массив данных
Возвращает:
массив данных, указанный в bank.
Исключения:
ArrayIndexOutOfBoundsException — если bank не является допустимым индексом банка.

getBankData

public double[][] getBankData()
Возвращает массив данных для всех банков.

Обратите внимание, что вызов этого метода может привести к несовместимости объекта DataBuffer с оптимизациями производительности, используемыми некоторыми реализациями (например, кэшированием связанного изображения в видеопамяти).

Возвращает:
все массивы данных из этого буфера данных.

getElem

public int getElem(int i)
Возвращает запрошенный элемент массива данных из первого (банка по умолчанию) в виде int.
Переопределяет:
getElem в классе DataBuffer
Параметры:
i — требуемый элемент массива данных.
Возвращает:
элемент данных в виде int.
Исключения:
ArrayIndexOutOfBoundsException — если (i + getOffset()) не является допустимым индексом.
См. также:
  • setElem(int, int)
  • setElem(int, int, int)

getElem

public int getElem(int bank, int i)
Возвращает запрошенный элемент массива данных из указанного банка в виде int.
Определено в:
getElem в классе DataBuffer
Параметры:
bank — номер банка.
i — требуемый элемент массива данных.
Возвращает:
элемент данных в виде int.
Исключения:
ArrayIndexOutOfBoundsException — если bank не является допустимым индексом банка или (i + getOffsets()[bank]) не является допустимым индексом в банке.
См. также:
  • setElem(int, int)
  • setElem(int, int, int)

setElem

public void setElem(int i, int val)
Устанавливает запрошенный элемент массива данных в первом (банке по умолчанию) в заданное значение int.
Переопределяет:
setElem в классе DataBuffer
Параметры:
i — требуемый элемент массива данных.
val — устанавливаемое значение.
Исключения:
ArrayIndexOutOfBoundsException — если (i + getOffset()) не является допустимым индексом.
См. также:
  • getElem(int)
  • getElem(int, int)

setElem

public void setElem(int bank, int i, int val)
Устанавливает запрошенный элемент массива данных в указанном банке в заданное значение int.
Определено в:
setElem в классе DataBuffer
Параметры:
bank — номер банка.
i — требуемый элемент массива данных.
val — устанавливаемое значение.
Исключения:
ArrayIndexOutOfBoundsException — если bank не является допустимым индексом банка или (i + getOffsets()[bank]) не является допустимым индексом в банке.
См. также:
  • getElem(int)
  • getElem(int, int)

getElemFloat

public float getElemFloat(int i)
Возвращает запрошенный элемент массива данных из первого (банка по умолчанию) в виде float.
Переопределяет:
getElemFloat в классе DataBuffer
Параметры:
i — требуемый элемент массива данных.
Возвращает:
элемент данных в виде float.
Исключения:
ArrayIndexOutOfBoundsException — если (i + getOffset()) не является допустимым индексом.
См. также:
  • setElemFloat(int, float)
  • setElemFloat(int, int, float)

getElemFloat

public float getElemFloat(int bank, int i)
Возвращает запрошенный элемент массива данных из указанного банка в виде float.
Переопределяет:
getElemFloat в классе DataBuffer
Параметры:
bank — номер банка.
i — требуемый элемент массива данных.
Возвращает:
элемент данных в виде float.
Исключения:
ArrayIndexOutOfBoundsException — если bank не является допустимым индексом банка или (i + getOffsets()[bank]) не является допустимым индексом в банке.
См. также:
  • setElemFloat(int, float)
  • setElemFloat(int, int, float)

setElemFloat

public void setElemFloat(int i, float val)
Устанавливает запрошенный элемент массива данных в первом (банке по умолчанию) в заданное значение float.
Переопределяет:
setElemFloat в классе DataBuffer
Параметры:
i — требуемый элемент массива данных.
val — устанавливаемое значение.
Исключения:
ArrayIndexOutOfBoundsException — если (i + getOffset()) не является допустимым индексом.
См. также:
  • getElemFloat(int)
  • getElemFloat(int, int)

setElemFloat

public void setElemFloat(int bank, int i, float val)
Устанавливает запрошенный элемент массива данных в указанном банке в заданное значение float.
Переопределяет:
setElemFloat в классе DataBuffer
Параметры:
bank — номер банка.
i — требуемый элемент массива данных.
val — устанавливаемое значение.
Исключения:
ArrayIndexOutOfBoundsException — если bank не является допустимым индексом банка или (i + getOffsets()[bank]) не является допустимым индексом в банке.
См. также:
  • getElemFloat(int)
  • getElemFloat(int, int)

getElemDouble

public double getElemDouble(int i)
Возвращает запрошенный элемент массива данных из первого (банка по умолчанию) в виде double.
Переопределяет:
getElemDouble в классе DataBuffer
Параметры:
i — требуемый элемент массива данных.
Возвращает:
элемент данных в виде double.
Исключения:
ArrayIndexOutOfBoundsException — если (i + getOffset()) не является допустимым индексом.
См. также:
  • setElemDouble(int, double)
  • setElemDouble(int, int, double)

getElemDouble

public double getElemDouble(int bank, int i)
Возвращает запрошенный элемент массива данных из указанного банка в виде double.
Переопределяет:
getElemDouble в классе DataBuffer
Параметры:
bank — номер банка.
i — требуемый элемент массива данных.
Возвращает:
элемент данных в виде double.
Исключения:
ArrayIndexOutOfBoundsException — если bank не является допустимым индексом банка или (i + getOffsets()[bank]) не является допустимым индексом в банке.
См. также:
  • setElemDouble(int, double)
  • setElemDouble(int, int, double)

setElemDouble

public void setElemDouble(int i, double val)
Устанавливает запрошенный элемент массива данных в первом (банке по умолчанию) в заданное значение double.
Переопределяет:
setElemDouble в классе DataBuffer
Параметры:
i — требуемый элемент массива данных.
val — устанавливаемое значение.
Исключения:
ArrayIndexOutOfBoundsException — если (i + getOffset()) не является допустимым индексом.
См. также:
  • getElemDouble(int)
  • getElemDouble(int, int)

setElemDouble

public void setElemDouble(int bank, int i, double val)
Устанавливает запрошенный элемент массива данных в указанном банке в заданное значение double.
Переопределяет:
setElemDouble в классе DataBuffer
Параметры:
bank — номер банка.
i — требуемый элемент массива данных.
val — устанавливаемое значение.
Исключения:
ArrayIndexOutOfBoundsException — если bank не является допустимым индексом банка или (i + getOffsets()[bank]) не является допустимым индексом в банке.
См. также:
  • getElemDouble(int)
  • getElemDouble(int, int)

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, 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.

Spec-Zone.ru

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