공개 최종 클래스 SingleElementSequence
단일 요소의 시퀀스
공공 생성자
SingleElementSequence ( AbstractNdArray <T, U> ndArray) |
공개 방법
NdArray시퀀스 <U> | asSlices () 각 요소를 새 슬라이스로 반환합니다. |
무효의 | forEachIndexed (BiConsumer<long[], U> 소비자) |
반복자<U> | 반복자 () |
상속된 메서드
공공 생성자
공개 방법
공개 NdArraySequence <U> asSlices ()
각 요소를 새 슬라이스로 반환합니다.
기존 Java 컬렉션과 달리 NdArraySequence
의 요소는 일시적입니다. 즉, 각 반복마다 새로운 NdArray
인스턴스가 할당됩니다. 성능을 향상시키기 위해 DataBufferWindow
사용하여 동일한 인스턴스를 재활용하여 이 시퀀스의 모든 요소를 볼 수 있습니다.
그러나 어떤 경우에는 반환된 각 요소가 원래 배열의 새로운 조각인지 확인하기 위해 이러한 최적화를 비활성화하는 것이 더 나을 수도 있습니다. 예를 들어, 방문한 하나 이상의 요소가 시퀀스 반복 범위를 벗어나야 하는 경우 asSlices()
시퀀스에서 반환된 모든 요소가 고유한 인스턴스인지 확인합니다.
final List<IntNdArray> vectors = new ArrayList<>();
IntNdArray matrix = NdArrays.ofInts(Shape.of(6, 6));
ndArray.elements(0).forEach(e -> vectors::add); // Not safe, as `e` might always be the same recycled instance
ndArray.elements(0).asSlices().forEach(e -> vectors::add); // Safe, each `e` is a distinct NdArray instance
보고
- 새로운 슬라이스로 반복되는 각 요소를 반환하는 시퀀스