Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

Java में इटरेटर और स्प्लिट इटरेटर के बीच अंतर

परिचय

इटरेटर और स्प्लिट इटरेटर दोनों इंटरफेस कलेक्शन पर पुनरावृति के लिए उपयोग किए जाते हैं।

स्प्लिट इटरेटर को Java 8 में समानांतरता प्राप्त करने के लिए पेश किया गया था। यह दिए गए तत्वों के सेट को विभाजित कर सकता है और विभिन्न स्वतंत्र थ्रेड्स का उपयोग करके समानांतर में ऑपरेशन कर सकता है। यह तत्वों को समानांतर के साथ-साथ क्रमिक तरीके से पार कर सकता है। स्प्लिट इटरेटर इंटरफेस में निम्नलिखित महत्वपूर्ण मेथड्स हैं -

  • trySplit - दिए गए तत्वों के सेट को कई टुकड़ों में विभाजित करने के लिए उपयोग किया जाता है।
  • tryAdvance - यह इटरेटर इंटरफेस में उपलब्ध hasNext/next मेथड्स के बराबर है
  • getExactSizeIfKnown - दिए गए तत्वों के सेट का आकार प्राप्त करने के लिए उपयोग किया जाता है।
क्र. सं.मुख्य बिंदुइटरेटरस्प्लिट इटरेटर
1बुनियादीइसका उपयोग कलेक्शन के तत्वों को पार करने के लिए किया जा सकता हैइसका उपयोग स्ट्रीम के साथ भी किया जा सकता है।
2बल्क ऑपरेशनइसका उपयोग तत्वों को एक-एक करके पार करने के लिए किया जा सकता हैइसका उपयोग तत्वों को बल्क में पार करने के लिए किया जा सकता है।
3क्रमिक/समानांतरयह केवल क्रमिक तरीके से तत्वों को पार कर सकता हैयह तत्वों को क्रमिक और समानांतर दोनों तरीकों से पार कर सकता है।
4एक्सटर्नल/इंटरनल इटरेटरइटरेटर कलेक्शन पर पुनरावृति के लिए एक्सटर्नल इटरेशन का उपयोग करता हैस्प्लिट इटरेटर इंटरनल इटरेशन का उपयोग करता है

Spliterator का उदाहरण

public class Main {
    public static void main(String args[]) {
        List listOfInteger = new ArrayList<>();
        listOfInteger.add(78);
        listOfInteger.add(10);
        listOfInteger.add(20);
        listOfInteger.add(30);
        Spliterator s = listOfInteger.spliterator();
        Spliterator s1 = s.trySplit();
        s.forEachRemaining(System.out::println);
        System.out.println("दूसरा भाग पार करें ");
        s1.forEachRemaining(System.out::println);
    }
}
  1. - जावा में Iterator और Enumeration के बीच अंतर

    Iterator और Enumeration दोनों कलेक्शन से एलिमेंट्स को ट्रैवर्स और एक्सेस करने के लिए कर्सर हैं। वे दोनों कलेक्शन फ्रेमवर्क से संबंधित हैं। Enumeration JDK 1.0 में जोड़ा गया था और Iterator JDK 1.2 वर्जन में कलेक्शन फ्रेमवर्क में जोड़ा गया। Enumeration कलेक्शन में स्ट्रक्चरल चेंज नहीं कर सकता क्योंकि

  1. - Java में ArrayList और HashSet के बीच अंतर

    HashSet और ArrayList दोनों Java कलेक्शन फ्रेमवर्क के सबसे महत्वपूर्ण क्लासेस में से कुछ हैं।ArrayList और HashSet के बीच महत्वपूर्ण अंतर निम्नलिखित हैं।क्रमांकमुख्य बिंदुArrayListHashSet1कार्यान्वयनArrayList लिस्ट इंटरफेस का कार्यान्वयन है।दूसरी ओर HashSet सेट इंटरफेस का कार्यान्वयन है।2आंतरिक कार्या

  1. - Java में Iterator और ListIterator के बीच अंतर

    Java ने कलेक्शन में संग्रहीत डेटा को एक-एक करके पार करने के लिए ये दो इंटरफेस प्रदान किए हैं। इटरेटर और लिस्ट इटरेटर का आंतरिक कार्यान्वयन उन्हें अलग करता है लेकिन दोनों इटरेटर्स का मुख्य एजेंडा समान है।Iterator और ListIterator के बीच महत्वपूर्ण अंतर निम्नलिखित हैं।क्रमांकमुख्य बिंदुIteratorListIter