ज्ञात अप्रत्यक्ष उपवर्ग FastElementSequence <T, U NdArray <T>> का विस्तार करता है, SingleElementSequence <T>> का विस्तार करता है, U NdArray का विस्तार करता है <T>>, SlicingElementSequence <T>> का विस्तार करता है, SlicingElementSequence <T>> का विस्तार करता है |
एन-आयामी सरणी के तत्वों का एक क्रम।
एक NdArraySequence
उपयोग किसी दिए गए आयाम में NdArray
पार करने और उसके प्रत्येक तत्व पर जाने के लिए किया जाता है। उदाहरण के लिए, [x, y]
अक्षों पर एक nxm
मैट्रिक्स दिए जाने पर, तत्वों को निम्नलिखित क्रम में पुनरावृत्त किया जाता है:
x 0 y 0 , x 0 y 1 , ..., x 0 y m-1 , x 1 y 0 , x 1 y 1 , ..., x n-1 y m-1
सार्वजनिक तरीके
सार NdArraySequence <T> | स्लाइस के रूप में () प्रत्येक तत्व को एक नए स्लाइस के रूप में लौटाता है। |
अमूर्त शून्य | forEachIndexed (BiConsumer<long[], T> उपभोक्ता) इस पुनरावृत्ति के प्रत्येक तत्व और उनके संबंधित निर्देशांक पर जाएँ। |
विरासत में मिली विधियाँ
सार्वजनिक तरीके
सार्वजनिक सार NdArraySequence <T> asSlices ()
प्रत्येक तत्व को एक नए स्लाइस के रूप में लौटाता है।
पारंपरिक जावा संग्रहों के विपरीत, 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
रिटर्न
- एक अनुक्रम जो प्रत्येक तत्व को एक नए स्लाइस के रूप में पुनरावृत्त करके लौटाता है
यह भी देखें
प्रत्येक अनुक्रमित के लिए सार्वजनिक सार शून्य (BiConsumer<long[], T> उपभोक्ता)
इस पुनरावृत्ति के प्रत्येक तत्व और उनके संबंधित निर्देशांक पर जाएँ।
महत्वपूर्ण: उपभोक्ता विधि को निर्देशांक का संदर्भ नहीं रखना चाहिए क्योंकि प्रदर्शन में सुधार के लिए पुनरावृत्ति के दौरान वे परिवर्तनशील और पुन: उपयोग किए जा सकते हैं।
पैरामीटर
उपभोक्ता | प्रत्येक तत्व के लिए आह्वान करने की विधि |
---|