मुझे पता है कि मैं इसके अलावा एक और [] जोड़कर एक सरणी में एक आयाम जोड़ सकता हूं। लेकिन क्या मेरे पास java.util.ArrayList में एक से अधिक आयाम हो सकते हैं? मैं इसे कैसे पूरा कर सकता हूं?दो आयामी ArrayList
उत्तर
हां, यह संभव है। बस अपने ArrayList
के तत्व भी ArrayLists
हो।
ArrayList<ArrayList<Integer>> twoDArrayList = new ArrayList<ArrayList<Integer>>();
यह ArrayLists
, लेकिन अन्य संग्रह प्रकारों के साथ भी काम करेगा।
List<ArrayList<Integer>> twoDArrayList = new ArrayList<ArrayList<Integer>>();
@ rgettman का जवाब काम किया हो जाता है, लेकिन वहाँ पर ध्यान देना कुछ चेतावनियां हैं:
चेतावनी 1: आयाम
सबसे आम उपयोग मामले में के आयाम सरणी, पूर्व-निर्धारित होते उदाहरण के लिए:
int[][] array = new int[5][6];
उस मामले में, सरणी आयामों के एक "आयताकार" फ़ॉर्म का हो जाएगा परिभाषित:
0 1 2 3 4 5
0 [][][][][][]
1 [][][][][][]
2 [][][][][][]
3 [][][][][][]
4 [][][][][][]
जैसा कि नीचे दी गई टिप्पणियों में किसी अन्य सदस्य द्वारा सुझाए गए अनुसार, इसके लिए और भी कुछ है। ए 'दो आयामी सरणी "केवल अन्य सारणियों की एक सरणी है, और कोड की रेखा से ऊपर के लिए कम हाथ है:
int[][] array = new int[5][];
array[0] = new int[6];
array[1] = new int[6];
array[2] = new int[6];
array[3] = new int[6];
array[4] = new int[6];
वैकल्पिक रूप से, बच्चे सरणियों विभिन्न आकारों के साथ instantiated किया जा सकता है जो मामले में "डेटा आकार" अब आयताकार होगा:
int[][] array = new int[5][];
array[0] = new int[2];
array[1] = new int[4];
array[2] = new int[1];
array[3] = new int[6];
array[4] = new int[3];
0 1 2 3 4 5
0 [][]
1 [][][][]
2 []
3 [][][][][][]
4 [][][]
ArrayList<ArrayList<Integer>>
दृष्टिकोण का उपयोग करते हुए जहां शामिल आपरेशन के परिणाम के रूप में बड़ा हो जाएगा सभी सूचियों की लंबाई प्रदर्शन एक "सूचियों की सूची" में परिणाम होगा।
आयामों को पूर्व परिभाषित करने के लिए कोई शॉर्टेंड नहीं है। बाल सूची को मास्टर सूची में डाला जाना चाहिए, और डेटा तत्वों को तब बाल सूचियों में डाला जाना चाहिए।
0 [][] <- list with 2 elements
1 [][][][] <- list with 4 elements
2 [] ...and so on
3 [][][][][][]
4 [][][]
चेतावनी 2: डेटा के आकार इस प्रकार दूसरे उदाहरण के समान हैं डेटा के मूलभूत मूल्यों
सरणी आदिम डेटा प्रकार के उपयोग की अनुमति (जैसे कि "int" के रूप में), और साथ उनके बॉक्स किए गए समकक्ष (जैसे "इंटीजर") के रूप में। जब तत्वों के डिफ़ॉल्ट मानों की बात आती है तो ये अलग-अलग व्यवहार करते हैं।
int[][] array1 = new int[5][6]; // all elements will default to 0
Integer[][] array2 = new Integer[5][6]; // all elements will default to null
सूचियां (अन्य सभी संग्रहों की तरह) केवल बॉक्स किए गए प्रकारों के उपयोग की अनुमति देते हैं। और इसलिए, जब सूची की लंबाई को पूर्व-परिभाषित करना संभव है, तो इसके तत्वों का डिफ़ॉल्ट मान हमेशा शून्य होगा।
List<Integer> = new ArrayList<Integer>(10); // all elements will default to null
सूची का उपयोग करें <सूची
@paulkore, अगर हमारे पास दो आयामी 'ArrayList है तो पुनरावृत्ति कैसे करें <> 'या' सूची <> 'जैसा ऊपर दिखाया गया है? – OverrockSTAR
@paulkore, रिकॉर्ड के लिए, यह ध्यान दिया जाना चाहिए कि एक दो आयामी सरणी (यदि एक समय में एक पंक्ति बनाई गई है) एक गैर-आयताकार "रैगर्ड" सरणी हो सकती है, जो आपकी सूची उदाहरण की तरह है। –
हाँ, आप कर सकते हैं! एक नियमित सरणी में, जब आप ब्रेसिज़ की दूसरी जोड़ी जोड़ते हैं, तो आप एक सामान्य सरणी बना रहे हैं जो ऑब्जेक्ट्स टाइप एरे स्टोर करता है। आप केवल वही काम कर सकते हैं, जिसमें ऐरेलिस्ट को चीजों की प्रकार है, ऐरेलिस्ट: ArrayList<ArrayList<Object>> list = new ArrayList<ArrayList<Object>>();
- 1. पाइथन (दो-आयामी)
- 2. जेएनए दो आयामी सरणी
- 3. की तुलना दो ArrayList
- 4. दो आयामी सरणी और संकेत
- 5. जावा - प्रिंटिंग दो आयामी सरणी
- 6. PHP दो बहु-आयामी सरणी
- 7. दो आयामी सरणी (वाई अक्ष)
- 8. जो दो आयामी std :: वेक्टर
- 9. एक दो आयामी सरणी से एक आयामी सरणी हो रही
- 10. 2 आयामी सरणी सूची
- 11. सी ++ दो आयामी std :: वेक्टर सर्वोत्तम प्रथाओं
- 12. दो-आयामी सरणी को क्रमबद्ध/deserialize
- 13. जावास्क्रिप्ट - नियंत्रण दो आयामी गतिशील सरणी
- 14. एक क्रमबद्ध दो आयामी numpy सरणी
- 15. कोटलिन में दो-आयामी इंट सरणी
- 16. दो आयामी सरणी का उपयोग कर टेम्पलेट्स
- 17. ArrayList
- 18. ArrayList
- 19. ArrayList
- 20. ArrayList
- 21. ArrayList
- 22. ArrayList
- 23. ArrayList
- 24. ArrayList
- 25. मैं जावास्क्रिप्ट में दो आयामी सरणी कैसे घोषित करूं?
- 26. आर में दो-आयामी इंटरपोलेशन, बिना किसी एक्सट्रापोलेशन
- 27. जो दो आयामी सरणी के subarrays से "कॉलम" निकालें
- 28. दो आयामी tf में tf.scatter_update का उपयोग करें। VARable
- 29. यह जावा सरणी दो आयामी क्यों मानी जाती है?
- 30. ** सूचक के लिए दो आयामी सरणी कैसे असाइन करें?
http: // stackoverflow का डुप्लिकेट।कॉम/प्रश्न/10866205/2-आयामी-सरणी-सूची – zardosht