मैं जावा के बारे में एक प्रश्न पूछना चाहता हूं। मेरे पास उपयोगकर्ता द्वारा परिभाषित ऑब्जेक्ट क्लास, छात्र है, जिसमें 2 डेटा सदस्य, नाम और आईडी हैं। और एक और कक्षा में, मुझे उस वस्तु को घोषित करना होगा [], (उदा। student stu[?];
)। हालांकि, मुझे ऑब्जेक्ट सरणी का आकार नहीं पता है। क्या ऑब्जेक्ट सरणी घोषित करना संभव है लेकिन आकार को नहीं जानते? धन्यवाद।जावा में गतिशील ऑब्जेक्ट सरणी कैसे घोषित करें?
उत्तर
उपयोगकर्ता ArrayList
इसके बजाए। जब आप नए तत्व जोड़ते हैं तो यह स्वचालित रूप से विस्तारित हो जाएगा। यदि आपको आवश्यकता हो तो बाद में आप इसे सरणी में बदल सकते हैं।
एक और विकल्प के रूप में (सुनिश्चित करें कि आप वास्तव में क्या चाहते हैं), आप Object[]
फ़ील्ड घोषित कर सकते हैं और तुरंत इसे प्रारंभ नहीं कर सकते हैं।
जैसा कि आपने शायद अब तक पता लगाया है, जावा में नियमित सरणी निश्चित आकार के हैं (एक सरणी का आकार बदला नहीं जा सकता है), ताकि सरणी में गतिशील रूप से आइटम जोड़ने के लिए, आपको एक आकार बदलने योग्य सरणी की आवश्यकता हो। जावा में, आकार बदलने योग्य सरणी को ऐरेलिस्ट क्लास (java.util.ArrayList
) के रूप में कार्यान्वित किया जाता है। इसके उपयोग के एक साधारण उदाहरण:
import java.util.ArrayList;
// Adds a student to the student array list.
ArrayList<Student> students = new ArrayList<Student>();
students.add(new Student());
<Student>
कोष्ठक (एक विशेषता जावा में कहा जाता जेनरिक) वैकल्पिक हैं; हालांकि, आपको उनका उपयोग करना चाहिए। मूल रूप से वे उस ऑब्जेक्ट के प्रकार को प्रतिबंधित करते हैं जिसे आप सरणी सूची में संग्रहीत कर सकते हैं, ताकि आप स्ट्रिंग ऑब्जेक्ट्स को पूर्णांक ऑब्जेक्ट से भरे सरणी में संग्रहीत न करें।
जावा में Arrays नहीं हैं अपरिवर्तनीय। आप आसानी से 'myArray [2] = 13' कर सकते हैं, इस प्रकार सरणी बदल रहे हैं। शायद आप का मतलब है कि उनका आकार बदला नहीं जा सकता है? –
हां यही मेरा मतलब है, इसे स्पष्ट करने के लिए धन्यवाद। मैं अपने जवाब में स्पष्ट कर दूंगा। – agentbanks217
आप इस रूप में घोषित कर सकते हैं: Student stu[]=null;
, और इसे निश्चित आकार के साथ बनाएं: stu[]=new Student[10]
जब तक आप आकार को नहीं जानते। यदि आपको सरणी का उपयोग करना है।
यह संभव नहीं है, ऑब्जेक्ट सरणी घोषित करते समय हमें सरणी का आकार निर्दिष्ट करने की आवश्यकता है;
एक तरह से दोनों ही मामलों नहीं किसी भी ऑब्जेक्ट का निर्माण होगा केवल अंतरिक्ष सरणी के लिए आवंटित किया जाता है में वस्तु सरणी
student st[]; st=new student[]3;
दूसरा तरीका
student st[]=new student[5];
घोषित करने के लिए।
st=new student[1];
इससे एक नई वस्तु बन जाएगी;
यदि छात्र एक कक्षा है तो आपको छात्र पूंजी एस के साथ कॉल करना चाहिए –
- 1. जावा में गतिशील सरणी कैसे प्रारंभ करें?
- 2. जावा गतिशील सरणी आकार?
- 3. जावा: जावा ऑब्जेक्ट को जावा ऑब्जेक्ट में जावा में स्ट्रिंग ऑब्जेक्ट में कैसे परिवर्तित करें?
- 4. जावास्क्रिप्ट में ऑब्जेक्ट सरणी कैसे मुद्रित करें?
- 5. फोरट्रान में आवंटनीय स्केलर की सरणी कैसे घोषित करें?
- 6. हेडर में बाहरी 2 डी-सरणी कैसे घोषित करें?
- 7. गतिशील सरणी कैसे बनाएं
- 8. जावा में ऑब्जेक्ट प्रकार और रेफरेंसिंग सरणी
- 9. जावा मानचित्र को मूल जावास्क्रिप्ट ऑब्जेक्ट में कैसे परिवर्तित करें?
- 10. गतिशील सरणी
- 11. जावा में एक सरणी कैसे फ़िल्टर करें?
- 12. स्टैक में गतिशील सरणी?
- 13. कैसे गतिशील रूप से आवंटित सरणी ओपनएम
- 14. फ़ंक्शन में 2 डी गतिशील आवंटित सरणी कैसे पास करें?
- 15. जावा में स्थिरता को गतिशील रूप से कैसे प्राप्त करें?
- 16. जावा गतिशील
- 17. मैं जावास्क्रिप्ट में दो आयामी सरणी कैसे घोषित करूं?
- 18. ऑब्जेक्ट की सरणी कैसे फ़िल्टर करें?
- 19. सी # में स्थानीय स्थिरता कैसे घोषित करें?
- 20. गतिशील रूप से जावा
- 21. जावा में परिवर्तनीय लंबाई (गतिशील) Arrays
- 22. गतिशील सरणी कुंजी
- 23. जावा में कक्षा नाम से क्लास ऑब्जेक्ट कैसे प्राप्त करें
- 24. जावा में फंक्शन ऑब्जेक्ट
- 25. printf() घोषित कैसे करें?
- 26. जावा में संग्रह ऑब्जेक्ट का ऑब्जेक्ट कैसे जांचें?
- 27. PHP: किसी सरणी को StdClass ऑब्जेक्ट में कैसे चालू करें?
- 28. जावा में अंतिम सरणी
- 29. बहुआयामी सरणी में पॉइंटर घोषित करना और सरणी आवंटित करना
- 30. स्ट्रिंग सरणी में तत्वों को गतिशील रूप से कैसे जोड़ें?
-1: कोई उदाहरण कोड नहीं। मैं इस जवाब को बहुत पसंद करता हूं क्योंकि उन्होंने सबसे कम प्रयास किए हैं और वास्तव में पर्याप्त जानकारी दी है कि उनके उत्तर पढ़ने के बाद और खोज की आवश्यकता नहीं थी: http://stackoverflow.com/a/3887507/901641 – ArtOfWarfare