List class's toArray in Java- Why can't I convert a list of "Integer" to an "Integer" array? -


मैंने परिभाषित सूची & lt; integer & gt; स्टैक = नए अर्रेलिस्ट & lt; पूर्णांक & gt; ();

जब मैं इसे किसी सरणी में परिवर्तित करने की कोशिश कर रहा हूं:

  पूर्णांक [] सरणी = stack.toArray ();   

मुझे यह अपवाद मिलता है:

  थ्रेड में अपवाद "मुख्य" java.lang.Error: अनसुलतीत संकलन समस्या: प्रकार बेमेल: ऑब्जेक्ट से परिवर्तित नहीं किया जा सकता [ ] पूर्णांक [] के लिए   

क्यों? यह बिल्कुल वैसा ही है- पूर्णांक में पूर्णांक यह सामान्य स्थिति में नहीं है जब वर्ग हैं

मैंने कास्टिंग करने की कोशिश की:

  पूर्णांक [] सरणी = (पूर्णांक []) stack.toArray ();   

लेकिन यहां मुझे यह त्रुटि मिलती है:

  थ्रेड में अपवाद "मुख्य" java.lang.ClassCastException: [Ljava.lang.Object; [Ljava.lang.Integer;] में डाली नहीं जा सकती।   

समस्या क्या है? प्रकार विरंजन के कारण, ArrayList रनटाइम पर अपनी सामान्य प्रकार को नहीं जानता, इसलिए यह केवल दे सकता है। आप सबसे सामान्य वस्तु [] आपको उपयोग करने की ज़रूरत है, जो आपको ऐरे के प्रकार को निर्दिष्ट करने की अनुमति देता है जो आप चाहते हैं।

  पूर्णांक [] सरणी = stack.toArray (नया पूर्णांक [stack.size ()]);    

Comments

Popular posts from this blog

mysql - BLOB/TEXT column 'value' used in key specification without a key length -

javascript - What is an alternative to using getElementByClass for hiding multiple elements? -

c - Selecting a file randomly from a file system -