IntDataBuffer

공용 인터페이스 IntDataBuffer

정수형의 DataBuffer .

공개 방법

추상 IntDataBuffer
copyTo ( DataBuffer <Integer> dst, 긴 크기)
추상 정수
getInt (긴 인덱스)
지정된 인덱스에서 int를 읽습니다.
추상 정수
getObject (긴 인덱스)
지정된 인덱스의 값을 읽습니다.
추상 IntDataBuffer
좁은 (긴 사이즈)
내용이 이 버퍼 내용의 공유 하위 시퀀스이고 크기가 지정된 값으로 설정된 새 버퍼를 만듭니다.
추상 IntDataBuffer
오프셋 (긴 인덱스)
지정된 인덱스에서 시작하여 이 버퍼 내용의 공유 하위 시퀀스를 내용으로 하는 새 버퍼를 만듭니다.
추상 IntDataBuffer
읽기 (int[] dst)
int 배열을 사용하는 대량 가져오기 메서드입니다.
추상 IntDataBuffer
읽기 (int[] dst, int 오프셋, int 길이)
int 배열을 사용하는 대량 가져오기 메서드입니다.
추상 IntDataBuffer
setInt (int 값, 긴 인덱스)
주어진 인덱스에 있는 이 버퍼에 주어진 int를 씁니다.
추상 IntDataBuffer
setObject (정수값, 긴 인덱스)
추상 IntDataBuffer
슬라이스 (긴 인덱스, 긴 크기)
지정된 인덱스에서 시작하여 지정된 크기로 이 버퍼 내용의 공유 하위 시퀀스를 내용으로 하는 새 버퍼를 만듭니다.
추상 DataBufferWindow < IntDataBuffer >
(긴 크기)
이 버퍼의 부분 보기를 제공하는 DataBufferWindow 만듭니다.
추상 IntDataBuffer
쓰기 (int[] src)
int 배열을 사용하는 대량 넣기 방법.
추상 IntDataBuffer
쓰기 (int[] src, int 오프셋, int 길이)
int 배열을 사용하는 대량 넣기 방법.

상속된 메서드

공개 방법

공용 추상 IntDataBuffer copyTo ( DataBuffer <Integer> dst, 긴 크기)

공개 추상 int getInt (긴 인덱스)

지정된 인덱스에서 int를 읽습니다.

매개변수
색인 float를 읽을 인덱스
보고
  • 주어진 인덱스의 int
던지기
IndexOutOfBoundsException 인덱스가 음수이거나 버퍼 크기보다 작지 않은 경우

공개 추상 정수 getObject (긴 인덱스)

지정된 인덱스의 값을 읽습니다. 중요: 이 메서드의 사용은 기본이 아닌 유형의 버퍼 또는 호출자가 데이터 유형을 결정적으로 알 수 없는 경우로 제한되어야 합니다. 다른 경우에는 성능을 크게 향상시키는 기본 변형(예: IntDataBuffer.getInt(idx) 을 사용하는 것이 좋습니다.

매개변수
색인 float를 읽을 인덱스
보고
  • 주어진 인덱스의 값

공용 추상 IntDataBuffer 좁은 (긴 크기)

내용이 이 버퍼 내용의 공유 하위 시퀀스이고 크기가 지정된 값으로 설정된 새 버퍼를 만듭니다.

새 크기는 이 버퍼 크기보다 클 수 없습니다. 이 버퍼의 내용에 대한 변경 사항은 새 버퍼에 표시되며 그 반대의 경우도 마찬가지입니다. 새 버퍼는 이 버퍼가 읽기 전용인 경우에만 읽기 전용이 됩니다.

이 호출은 slice(0, size) 와 동일합니다.

매개변수
크기 이 새 버퍼의 크기
보고
  • 새로운 버퍼

공개 추상 IntDataBuffer 오프셋 (긴 인덱스)

지정된 인덱스에서 시작하여 이 버퍼 내용의 공유 하위 시퀀스를 내용으로 하는 새 버퍼를 만듭니다.

인덱스는 이 버퍼 크기보다 클 수 없습니다. 이 버퍼의 내용에 대한 변경 사항은 새 버퍼에 표시되며 그 반대의 경우도 마찬가지입니다. 새 버퍼는 이 버퍼가 읽기 전용인 경우에만 읽기 전용이 됩니다.

이 호출은 slice(index, size() - index) 와 동일합니다.

매개변수
색인 생성된 새 버퍼의 첫 번째 값 인덱스는 size() 보다 클 수 없습니다.
보고
  • 새로운 버퍼

공개 추상 IntDataBuffer 읽기 (int[] dst)

int 배열을 사용하는 대량 가져오기 메서드입니다.

이 메소드는 이 버퍼의 값을 지정된 대상 배열로 전송합니다. 요청을 충족하는 데 필요한 것보다 버퍼에 더 적은 값이 있는 경우, 즉 dst.length > size() 인 경우 값이 전송되지 않고 BufferUnderflowException이 발생합니다.

그렇지 않은 경우, 이 메소드는 이 버퍼의 n = dst.length 값을 지정된 배열로 복사합니다.

매개변수
일광 값을 쓸 배열
보고
  • 이 버퍼
던지기
BufferUnderflowException 이 버퍼에서 복사할 값이 충분하지 않은 경우

공개 추상 IntDataBuffer 읽기 (int[] dst, int 오프셋, int 길이)

int 배열을 사용하는 대량 가져오기 메서드입니다.

이 메소드는 이 버퍼의 값을 지정된 대상 배열로 전송합니다. 요청을 충족하는 데 필요한 것보다 버퍼에 더 적은 값이 있는 경우, 즉 length > size() 인 경우 값이 전송되지 않고 BufferUnderflowException이 발생합니다.

그렇지 않은 경우, 이 메소드는 이 버퍼의 n = length 값을 지정된 오프셋에서 시작하여 지정된 배열로 복사합니다.

매개변수
일광 값을 쓸 배열
오프셋 기록할 첫 번째 값의 배열 내 오프셋입니다. 음수가 아니어야 하고 dst.length 보다 크지 않아야 합니다.
길이 주어진 배열에 기록될 최대 값 수입니다. 음수가 아니어야 하고 dst.length - offset
보고
  • 이 버퍼
던지기
BufferUnderflowException 이 버퍼에 길이 값보다 적은 값이 남아 있는 경우
IndexOutOfBoundsException 오프셋 및 길이 매개변수의 전제조건이 유지되지 않는 경우

공개 추상 IntDataBuffer setInt (int 값, 긴 인덱스)

주어진 인덱스에 있는 이 버퍼에 주어진 int를 씁니다.

매개변수
쓸 int
색인 값이 기록될 인덱스
보고
  • 이 버퍼
던지기
IndexOutOfBoundsException 인덱스가 음수이거나 버퍼 크기보다 작지 않은 경우
ReadOnlyBufferException 이 버퍼가 읽기 전용인 경우

공용 추상 IntDataBuffer setObject (정수 값, 긴 인덱스)

공용 추상 IntDataBuffer 슬라이스 (긴 인덱스, 긴 크기)

지정된 인덱스에서 시작하여 지정된 크기로 이 버퍼 내용의 공유 하위 시퀀스를 내용으로 하는 새 버퍼를 만듭니다.

인덱스에 새 크기를 더한 값은 이 버퍼 크기보다 클 수 없습니다. 이 버퍼의 내용에 대한 변경 사항은 새 버퍼에 표시되며 그 반대의 경우도 마찬가지입니다. 새 버퍼는 이 버퍼가 읽기 전용인 경우에만 읽기 전용이 됩니다.

매개변수
색인 생성된 새 버퍼의 첫 번째 값 인덱스
크기 이 새 버퍼의 크기는 size() 보다 클 수 없습니다.
보고
  • 새로운 버퍼

공용 추상 DataBufferWindow < IntDataBuffer > (긴 크기)

이 버퍼의 부분 보기를 제공하는 DataBufferWindow 만듭니다.

생성된 창은 고정된 크기를 가지며 이 버퍼를 따라 "slide" 하여 offset(long) 처럼 새 버퍼 인스턴스를 할당하지 않고도 데이터의 다양한 보기를 제공할 수 있습니다. 이렇게 하면 이 작업을 자주 반복할 때 전반적인 성능이 향상됩니다. 예를 들어:

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;
     
 }
 }

반환된 개체는 상태 저장 개체이며 스레드로부터 안전하지 않습니다.

매개변수
크기 창문의 크기
보고
  • 이 버퍼의 인덱스 0에서 시작하는 새 창

공개 추상 IntDataBuffer 쓰기 (int[] src)

int 배열을 사용하는 대량 넣기 방법.

이 메소드는 지정된 소스 배열의 값을 이 버퍼로 전송합니다. 이 버퍼보다 ​​소스 배열에 더 많은 값이 있는 경우, 즉 src.length > size() 인 경우 값이 전송되지 않고 BufferOverflowException이 발생합니다.

그렇지 않은 경우 이 메서드는 지정된 배열에서 n = src.length 값을 복사합니다.

매개변수
소스 값을 읽어올 소스 배열
보고
  • 이 버퍼
던지기
버퍼오버플로우예외 소스 배열의 값을 저장할 공간이 이 버퍼에 부족한 경우
ReadOnlyBufferException 이 버퍼가 읽기 전용인 경우

공개 추상 IntDataBuffer 쓰기 (int[] src, int 오프셋, int 길이)

int 배열을 사용하는 대량 넣기 방법.

이 메소드는 지정된 소스 배열의 값을 이 버퍼로 전송합니다. 이 버퍼보다 ​​소스 배열에 더 많은 값이 있는 경우, 즉 length > size() 인 경우 값이 전송되지 않고 BufferOverflowException이 발생합니다.

그렇지 않은 경우, 이 메소드는 지정된 배열의 n = length 값을 지정된 오프셋에서 시작하여 이 버퍼에 복사합니다.

매개변수
소스 값을 읽어올 소스 배열
오프셋 읽을 첫 번째 값의 배열 내 오프셋입니다. 음수가 아니어야 하고 src.length 보다 크지 않아야 합니다.
길이 주어진 배열에서 읽어올 값의 수; 음수가 아니어야 하고 src.length - offset
보고
  • 이 버퍼
던지기
버퍼오버플로우예외 소스 배열의 값을 저장할 공간이 이 버퍼에 부족한 경우
IndexOutOfBoundsException 오프셋 및 길이 매개변수의 전제조건이 유지되지 않는 경우
ReadOnlyBufferException 이 버퍼가 읽기 전용인 경우