ByteDataBuffer

interfaz pública ByteDataBuffer

Un DataBuffer de bytes.

Métodos públicos

búfer de datos booleanos abstracto
como booleanos ()
Devuelve este búfer de bytes como un búfer de valores booleanos.
Resumen DoubleDataBuffer
comoDobles ()
Devuelve este búfer de bytes como un búfer de dobles.
búfer de datos flotante abstracto
como flotadores ()
Devuelve este búfer de bytes como un búfer de flotantes.
Resumen IntDataBuffer
asIntos ()
Devuelve este búfer de bytes como un búfer de enteros.
Resumen LongDataBuffer
mientras ()
Devuelve este búfer de bytes como un búfer de largos.
resumen ShortDataBuffer
como pantalones cortos ()
Devuelve este búfer de bytes como un búfer de cortos.
ByteDataBuffer abstracto
copyTo ( DataBuffer <Byte> dst, tamaño largo)
byte abstracto
getByte (índice largo)
Lee el byte en el índice dado.
byte abstracto
getObject (índice largo)
Lee el valor en el índice dado.
ByteDataBuffer abstracto
estrecho (tamaño largo)
Crea un nuevo búfer cuyo contenido es una subsecuencia compartida del contenido de este búfer, cuyo tamaño se establece en el valor dado.
ByteDataBuffer abstracto
compensación (índice largo)
Crea un nuevo búfer cuyo contenido es una subsecuencia compartida del contenido de este búfer, comenzando en el índice dado.
ByteDataBuffer abstracto
leer (byte[] dst)
Método de obtención masiva, utilizando matrices de bytes.
ByteDataBuffer abstracto
leer (byte[] dst, desplazamiento int, longitud int)
Método de obtención masiva, utilizando matrices de bytes.
ByteDataBuffer abstracto
setByte (valor de byte, índice largo)
Escribe el byte dado en este búfer en el índice dado.
ByteDataBuffer abstracto
setObject (valor de byte, índice largo)
ByteDataBuffer abstracto
rebanada (índice largo, tamaño largo)
Crea un nuevo búfer cuyo contenido es una subsecuencia compartida del contenido de este búfer, comenzando en el índice dado y del tamaño dado.
resumen DataBufferWindow <ByteDataBuffer>
ventana (tamaño largo)
Crea una DataBufferWindow que proporciona una vista parcial de este búfer.
ByteDataBuffer abstracto
escribir (byte[] origen)
Método de colocación masiva, que utiliza matrices de bytes.
ByteDataBuffer abstracto
escribir (byte[] origen, int desplazamiento, int longitud)
Método de colocación masiva, que utiliza matrices de bytes.

Métodos heredados

Métodos públicos

BooleanDataBuffer abstracto público asBooleans ()

Devuelve este búfer de bytes como un búfer de valores booleanos.

El búfer devuelto proporciona una vista diferente de la misma memoria que el búfer de bytes original, lo que significa que cambiar un valor en uno afectará al otro.

Devoluciones
Lanza
Excepción de estado ilegal si este buffer no se puede convertir

resumen público DoubleDataBuffer asDoubles ()

Devuelve este búfer de bytes como un búfer de dobles.

El búfer devuelto proporciona una vista diferente de la misma memoria que el búfer de bytes original, lo que significa que cambiar un valor en uno afectará al otro.

Devoluciones
Lanza
Excepción de estado ilegal si este buffer no se puede convertir

resumen público FloatDataBuffer asFloats ()

Devuelve este búfer de bytes como un búfer de flotantes.

El búfer devuelto proporciona una vista diferente de la misma memoria que el búfer de bytes original, lo que significa que cambiar un valor en uno afectará al otro.

Devoluciones
Lanza
Excepción de estado ilegal si este buffer no se puede convertir

resumen público IntDataBuffer asInts ()

Devuelve este búfer de bytes como un búfer de enteros.

El búfer devuelto proporciona una vista diferente de la misma memoria que el búfer de bytes original, lo que significa que cambiar un valor en uno afectará al otro.

Devoluciones
Lanza
Excepción de estado ilegal si este buffer no se puede convertir

resumen público LongDataBuffer asLongs ()

Devuelve este búfer de bytes como un búfer de largos.

El búfer devuelto proporciona una vista diferente de la misma memoria que el búfer de bytes original, lo que significa que cambiar un valor en uno afectará al otro.

Devoluciones
Lanza
Excepción de estado ilegal si este buffer no se puede convertir

resumen público ShortDataBuffer asShorts ()

Devuelve este búfer de bytes como un búfer de cortos.

El búfer devuelto proporciona una vista diferente de la misma memoria que el búfer de bytes original, lo que significa que cambiar un valor en uno afectará al otro.

Devoluciones
Lanza
Excepción de estado ilegal si este buffer no se puede convertir

copyTo de ByteDataBuffer abstracto público ( DataBuffer <Byte> dst, tamaño largo)

byte abstracto público getByte (índice largo)

Lee el byte en el índice dado.

Parámetros
índice el índice desde el cual se leerá el flotante
Devoluciones
  • el byte en el índice dado
Lanza
Excepción IndexOutOfBounds si el índice es negativo o no es menor que el tamaño del búfer

byte abstracto público getObject (índice largo)

Lee el valor en el índice dado. Importante: El uso de este método debe limitarse a buffers de tipos no primitivos o cuando el autor de la llamada no conoce de manera determinista el tipo de datos. En cualquier otro caso, prefiera el uso de su variante primitiva que mejorará significativamente el rendimiento (por ejemplo, IntDataBuffer.getInt(idx)

Parámetros
índice el índice desde el cual se leerá el flotante
Devoluciones
  • el valor en el índice dado

ByteDataBuffer abstracto público estrecho (tamaño largo)

Crea un nuevo búfer cuyo contenido es una subsecuencia compartida del contenido de este búfer, cuyo tamaño se establece en el valor dado.

El nuevo tamaño no debe ser mayor que este tamaño de búfer. Los cambios en el contenido de este búfer serán visibles en el nuevo búfer y viceversa. El nuevo búfer será de sólo lectura si, y sólo si, este búfer es de sólo lectura.

Esta llamada es equivalente a slice(0, size)

Parámetros
tamaño tamaño de este nuevo buffer
Devoluciones
  • el nuevo buffer

Desplazamiento de ByteDataBuffer abstracto público (índice largo)

Crea un nuevo búfer cuyo contenido es una subsecuencia compartida del contenido de este búfer, comenzando en el índice dado.

El índice no debe ser mayor que este tamaño de búfer. Los cambios en el contenido de este búfer serán visibles en el nuevo búfer y viceversa. El nuevo búfer será de sólo lectura si, y sólo si, este búfer es de sólo lectura.

Esta llamada es equivalente a slice(index, size() - index)

Parámetros
índice El índice del primer valor del nuevo buffer creado no debe ser mayor que size()
Devoluciones
  • el nuevo buffer

lectura pública abstracta de ByteDataBuffer (byte[] dst)

Método de obtención masiva, utilizando matrices de bytes.

Este método transfiere valores de este búfer a la matriz de destino dada. Si hay menos valores en el búfer de los necesarios para satisfacer la solicitud, es decir, si dst.length > size() , no se transfiere ningún valor y se genera una BufferUnderflowException.

De lo contrario, este método copia los valores n = dst.length de este búfer en la matriz dada.

Parámetros
horario de verano la matriz en la que se escribirán los valores
Devoluciones
  • este buffer
Lanza
Excepción de flujo de búfer si no hay suficientes valores para copiar desde este buffer

lectura pública abstracta de ByteDataBuffer (byte[] dst, desplazamiento int, longitud int)

Método de obtención masiva, utilizando matrices de bytes.

Este método transfiere valores de este búfer a la matriz de destino dada. Si hay menos valores en el búfer de los necesarios para satisfacer la solicitud, es decir, si length > size() , no se transfiere ningún valor y se genera una BufferUnderflowException.

De lo contrario, este método copia n = length de este búfer en la matriz dada comenzando en el desplazamiento dado.

Parámetros
horario de verano la matriz en la que se escribirán los valores
compensar el desplazamiento dentro de la matriz del primer valor que se escribirá; debe ser no negativo y no mayor que dst.length
longitud el número máximo de valores que se escribirán en la matriz dada; debe ser no negativo y no mayor que dst.length - offset
Devoluciones
  • este buffer
Lanza
Excepción de flujo de búfer si quedan menos valores de longitud en este búfer
Excepción IndexOutOfBounds si las condiciones previas de los parámetros de desplazamiento y longitud no se cumplen

ByteDataBuffer abstracto público setByte (valor de byte, índice largo)

Escribe el byte dado en este búfer en el índice dado.

Parámetros
valor el byte a escribir
índice el índice en el que se escribirá el valor
Devoluciones
  • este buffer
Lanza
Excepción IndexOutOfBounds si el índice es negativo o no es menor que el tamaño del búfer
Excepción de sólo lectura de buffer si este buffer es de solo lectura

público abstracto ByteDataBuffer setObject (valor de byte, índice largo)

segmento ByteDataBuffer abstracto público (índice largo, tamaño largo)

Crea un nuevo búfer cuyo contenido es una subsecuencia compartida del contenido de este búfer, comenzando en el índice dado y del tamaño dado.

El índice más el nuevo tamaño no debe ser mayor que este tamaño de búfer. Los cambios en el contenido de este búfer serán visibles en el nuevo búfer y viceversa. El nuevo búfer será de sólo lectura si, y sólo si, este búfer es de sólo lectura.

Parámetros
índice índice del primer valor del nuevo buffer creado
tamaño El tamaño de este nuevo buffer no debe ser mayor que size()
Devoluciones
  • el nuevo buffer

ventana pública abstracta DataBufferWindow <ByteDataBuffer> (tamaño largo)

Crea una DataBufferWindow que proporciona una vista parcial de este búfer.

La ventana creada tiene un tamaño fijo y puede "slide" a lo largo de este búfer para proporcionar diferentes vistas de los datos sin asignar una nueva instancia de búfer, como lo hace offset(long) . Esto mejora el rendimiento general cuando esta operación se repite con frecuencia. Por ejemplo:

IntDataBuffer bufferA = DataBuffers.ofInts(1024);
 // ... init buffer data
 IntDataBuffer bufferB = DataBuffers.ofInts(1, 2, 3, 4);

 // Return the index of the first occurrence of bufferB in bufferA using a sliding window
 DataBufferWindow<IntDataBuffer> windowA = bufferA.window(4);
 for (int i = 0; i < bufferA.size() - bufferB.size(); ++i) {
     if (windowA.slideTo(i).buffer().equals(bufferB)) {
         return i;
     
 }
 }

El objeto devuelto tiene estado y no es seguro para subprocesos.

Parámetros
tamaño tamaño de la ventana
Devoluciones
  • una nueva ventana que comienza en el índice 0 de este buffer

Escritura pública abstracta de ByteDataBuffer (byte[] src)

Método de colocación masiva, que utiliza matrices de bytes.

Este método transfiere los valores de la matriz fuente dada a este búfer. Si hay más valores en la matriz de origen que en este búfer, es decir, si src.length > size() , no se transfieren valores y se genera una BufferOverflowException.

De lo contrario, este método copia los valores n = src.length de la matriz dada.

Parámetros
src la matriz de origen desde la cual se leerán los valores
Devoluciones
  • este buffer
Lanza
Excepción de desbordamiento de búfer si no hay suficiente espacio en este búfer para los valores en la matriz de origen
Excepción de sólo lectura de buffer si este buffer es de solo lectura

Escritura pública abstracta de ByteDataBuffer (byte[] src, int offset, int length)

Método de colocación masiva, que utiliza matrices de bytes.

Este método transfiere los valores de la matriz fuente dada a este búfer. Si hay más valores en la matriz de origen que en este búfer, es decir, si length > size() , no se transfieren valores y se genera una BufferOverflowException.

De lo contrario, este método copia n = length de la matriz dada en este búfer, comenzando en el desplazamiento dado.

Parámetros
src la matriz de origen desde la cual se leerán los valores
compensar el desplazamiento dentro de la matriz del primer valor a leer; debe ser no negativo y no mayor que src.length
longitud el número de valores que se leerán de la matriz dada; debe ser no negativo y no mayor que src.length - offset
Devoluciones
  • este buffer
Lanza
Excepción de desbordamiento de búfer si no hay suficiente espacio en este búfer para los valores en la matriz de origen
Excepción IndexOutOfBounds si las condiciones previas de los parámetros de desplazamiento y longitud no se cumplen
Excepción de sólo lectura de buffer si este buffer es de solo lectura