2012-01-17 17 views
5

ArrayList के लिए दस्तावेज के निम्न भाग के प्रलेखन पर स्पष्ट नहीं मेरे लिए सही नहीं लगता है:ArrayList

आकार, isEmpty, मिलता है, सेट, इटरेटर, और listIterator संचालन निरंतर समय में चलाते हैं।

अब सेट के रूप में परिभाषित किया गया है:

सेट (पूर्णांक सूचकांक, ई तत्व)
निर्दिष्ट तत्व के साथ इस सूची में निर्दिष्ट स्थान पर तत्व को बदलता है।

तो इसका उपयोग ArrayList के बीच में एक तत्व जोड़ने के लिए किया जा सकता है और शेष तत्वों को स्थानांतरित करने का कारण बन सकता है।
लेकिन इसे रैखिक ऑपरेशन माना जाता है और स्थिर नहीं होता है।

क्या मैं यहाँ गलत हूँ? या मैं कुछ याद कर रहा हूँ?

+1

आप 'जोड़ने (पूर्णांक सूचकांक, ई तत्व)' के बारे में सोच रहे हैं। – Viruzzo

उत्तर

9

यह एक सेट ऑपरेशन है, न कि एक ऐड। यह सिर्फ सरणी की i-th प्रविष्टि को प्रतिस्थापित करता है।

4

तो इसका उपयोग ArrayList के बीच में एक तत्व जोड़ने के लिए किया जा सकता है और शेष तत्वों को स्थानांतरित करने का कारण बन सकता है।

नहीं, यह व्याख्या सही नहीं है। ऑपरेशन को एक अलग तत्व के साथ एक मौजूदा तत्व को प्रतिस्थापित करता है; यह कुछ भी सम्मिलित नहीं करता है।

5

ArrayList.set सूचकांक पर तत्व को प्रतिस्थापित करेगा, सूचकांक में डालें नहीं। यह कहने जैसा है:

array[i] = something; 

निरंतर संचालन।

3

सेट (पूर्णांक सूचकांक, ई तत्व) निर्दिष्ट तत्व के साथ इस सूची में निर्दिष्ट स्थान पर तत्व को बदलता है।

यह नया तत्व बीच यह अधिलेखित कर देता है (बदल देता है, करने के लिए सेट) तत्व

3

set बदलता तत्व निर्दिष्ट स्थान पर नहीं जोड़ता है। अन्य मूल्यों में कोई बदलाव नहीं है। पुराना तत्व खो गया है।

3

सेट

सार्वजनिक वस्तु सेट (पूर्णांक सूचकांक, वस्तु तत्व) निर्दिष्ट तत्व (वैकल्पिक आपरेशन) के साथ इस सूची में निर्दिष्ट स्थान पर तत्व को बदलता है।

विधि इंडेक्स पर तत्व को प्रतिस्थापित करती है और कुछ भी नहीं बदलती है, इंडेक्स पर वर्तमान तत्व आपको वापस कर दिया जाएगा और अब सूची में नहीं होगा।

इस प्रकार, हे (1)