मान लें कि मेरे पास List
ऑब्जेक्ट और उस सूची के लिए एक इटरेटर है।जब मैं एक सूची क्रमबद्ध करता हूं तो इसके इटरेटर के साथ क्या होता है?
अब मैं java.util.Collections.sort()
- इटरेटर का क्या होता है के साथ इस सूची को सॉर्ट?
- क्या इसका व्यवहार अभी भी परिभाषित है और क्या इसका अभी भी उपयोग किया जा सकता है?
- यदि नहीं, तो क्या मैं सूची के लिए इटरेटर को नष्ट कर सकता हूं?
मुझे पता है, इस समस्या को प्रोग्राम डिज़ाइन को बदलकर, उदाहरण के लिए सूची को क्लोन करके अवरुद्ध किया जा सकता है, लेकिन मैं विशिष्ट रूप से जावा के "आधिकारिक" व्यवहार को जानना चाहता हूं।
यह एक इटरेटर के लिए स्पष्ट उत्तर '' संग्रह c' में ओर इशारा करते हुए p' है। दो पुनरावृत्तियों 'पी' और' क्यू 'के समान संग्रह' सी' में इशारा करते हुए और स्वतंत्र रूप से पुनरावृत्त होने के बारे में क्या? क्या _ "इटेटरेटर के माध्यम से छोड़कर" _ का अर्थ है 'पी' जैसे इटरेटर का विशिष्ट उदाहरण या इसका मतलब इटरेटर का कोई उदाहरण है? मुझे लगता है कि 'पी' और' q' का स्वतंत्र पुनरावृत्ति एक दूसरे को अमान्य कर देगा (केवल इसलिए कि न तो इसे अन्य इटरेटर के बारे में पता है और न ही संग्रह अपने सभी इटरेटर को याद करता है), लेकिन इसे यहां स्पष्ट करना अच्छा है। धन्यवाद! – uvsmtid
@uvsmtid: यह उस विशिष्ट इटरेटर के माध्यम से छोड़कर है। यदि आपके पास एक ही संग्रह पर दो पुनरावर्तक हैं, तो आप उनमें से किसी के माध्यम से संग्रह को संशोधित नहीं कर सकते हैं, जब तक कि यह एक ऐसा संग्रह न हो जो समवर्ती संशोधन का स्पष्ट रूप से समर्थन करता हो। –