मेरे पास एक है ArrayListऔर मैं इसे बिल्कुल कॉपी करना चाहता हूं। मैं उपयोगिता वर्गों का उपयोग तब करता हूं जब यह अनुमान लगाया जाता है कि किसी ने इसे सही करने के लिए कुछ समय बिताया। इसलिए स्वाभाविक रूप से, मैं उस Collectionsवर्ग के साथ समाप्त होता हूं जिसमें एक प्रतिलिपि पद्धति है।
मान लीजिए कि मेरे पास निम्नलिखित हैं:
List<String> a = new ArrayList<String>();
a.add("a");
a.add("b");
a.add("c");
List<String> b = new ArrayList<String>(a.size());
Collections.copy(b,a);
यह विफल रहता है क्योंकि मूल रूप से यह सोचता bहै कि पकड़ के लिए पर्याप्त बड़ा नहीं है a। हां मुझे पता है bकि आकार 0 है, लेकिन यह काफी बड़ा होना चाहिए अब इसे नहीं करना चाहिए? अगर मुझे bपहले भरना है , तो Collections.copy()मेरे दिमाग में पूरी तरह से बेकार कार्य हो जाएगा। तो, एक कॉपी फ़ंक्शन (जो मैं अब करने जा रहा हूं) को प्रोग्रामिंग करने के अलावा, क्या ऐसा करने का एक उचित तरीका है?