जावा में ऐरे: कैसे घोषित और आरंभ करें? पूर्ण गाइड

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

परिचय: यह प्रश्न अनुभवी Java डेवलपर्स को भी क्यों परेशान करता है?

\n\n

यदि आपने कभी "How do I declare and initialize an array in Java?" गूगल किया है, तो आप अकेले नहीं हैं। Stack Overflow पर इस प्रश्न ने सैकड़ों हज़ारों व्यूज़ एकत्र किए हैं और यह बढ़ता ही जा रहा है। इसमें मुश्किल क्या है? लेकिन हमेशा की तरह, शैतान विवरणों में छिपा है। Java एक कड़ी टाइपिंग वाली भाषा है, और यहाँ ऐरे का सिंटैक्स शुरुआती को भ्रमित कर सकता है।

\n\n

इस लेख में, हम Java में ऐरे घोषित और आरंभ करने के सभी संभावित तरीकों पर चर्चा करेंगे। आप जानेंगे कि int[] arr, int arr[] से कैसे अलग है, ऑब्जेक्ट के ऐरे को सही तरीके से कैसे बनाया जाए, और NullPointerException के जाल में कैसे न फँसें। चलिए शुरू करते हैं!

\n\n

1. मूल बातें: Java में ऐरे क्या है?

\n\n

Java में ऐरे एक कंटेनर है जो एक ही प्रकार के तत्वों की एक निश्चित संख्या को संग्रहीत करता है। Python या JavaScript के विपरीत, जहाँ ऐरे गतिशील हो सकते हैं, Java में ऐरे का आकार निर्माण के समय निर्धारित किया जाता है और इसे बदला नहीं जा सकता।

\n\n
int[] numbers; // घोषणा (declaration)\nnumbers = new int[5]; // आरंभीकरण (initialization) — 5 तत्वों के लिए मेमोरी आवंटन\n
\n\n

पहली पंक्ति में हम कंपाइलर से कहते हैं: "मैं एक वेरिएबल बनाना चाहता हूँ जो पूर्णांकों के ऐरे को संदर्भित करेगा।" दूसरी में, हम 5 तत्वों के लिए मेमोरी आवंटित करते हैं। इसके बाद ही ऐरे उपयोग के लिए तैयार होता है।

\n\n

2. ऐरे घोषित करने के तरीके

\n\n

Java में ऐरे घोषित करने के दो सिंटैक्स हैं। दोनों मान्य हैं, लेकिन Java समुदाय (और Oracle के आधिकारिक कोडिंग मानक) पहले विकल्प की सलाह देता है।

\n\n

तरीका 1: डेटा प्रकार + वेरिएबल नाम से पहले वर्गाकार कोष्ठक

\n
int[] myArray;\nString[] names;\ndouble[] prices;\n
\n\n

तरीका 2: वेरिएबल नाम के बाद वर्गाकार कोष्ठक (C/C++ शैली)

\n
int myArray[];\nString names[];\ndouble prices[];\n
\n\n

कौन सा चुनें? पहला विकल्प अधिक स्वाभाविक रूप से पढ़ा जाता है: int[] myArray — "myArray नाम का पूर्णांकों का ऐरे"। दूसरा विकल्प भ्रमित कर सकता है, खासकर जब आप एक पंक्ति में कई वेरिएबल घोषित करते हैं:

\n\n
int[] arr1, arr2; // दोनों वेरिएबल ऐरे हैं\nint arr3[], arr4; // arr3 ऐरे है, arr4 एक सामान्य पूर्णांक है (गलती!)\n
\n\n

इसलिए हमेशा प्रकार[] नाम का उपयोग करें।

\n\n

3. ऐरे आरंभीकरण: 4 सिद्ध तरीके

\n\n

घोषणा के बाद ऐरे को आरंभ करना आवश्यक है। इसे सही तरीके से करने का तरीका यहाँ दिया गया है।

\n\n

तरीका 1: आकार निर्दिष्ट करके खाली ऐरे बनाना

\n
int[] numbers = new int[10]; // 10 तत्वों का ऐरे, सभी 0 (डिफ़ॉल्ट) हैं\nString[] words = new String[5]; // 5 स्ट्रिंग्स का ऐरे, सभी null हैं\n
\n\n

यह तरीका उपयुक्त है यदि आप बाद में ऐरे भरने की योजना बनाते हैं (उदाहरण के लिए, लूप में)। याद रखना महत्वपूर्ण है: संख्यात्मक प्रकारों के लिए डिफ़ॉल्ट मान 0, boolean के लिए false, और संदर्भ प्रकारों के लिए null है।

\n\n

तरीका 2: ऐरे लिटरल के साथ आरंभीकरण

\n
int[] numbers = {1, 2, 3, 4, 5};\nString[] fruits = {"apple", "banana", "orange"};\n
\n\n

यह सबसे छोटा और सुविधाजनक तरीका है जब आप सभी तत्वों को पहले से जानते हैं। ध्यान दें: यह सिंटैक्स केवल घोषणा के समय काम करता है।

\n\n

तरीका 3: अनाम ऐरे (वेरिएबल नाम के बिना)

\n
int[] numbers = new int[]{1, 2, 3, 4, 5};\n
\n\n

यह विकल्प तब उपयोगी होता है जब आपको एक अलग वेरिएबल बनाए बिना किसी विधि में ऐरे पास करने की आवश्यकता होती है:

\n\n
printArray(new int[]{10, 20, 30});\n
\n\n

तरीका 4: लूप के माध्यम से आरंभीकरण

\n
int[] squares = new int[10];\nfor (int i = 0; i < squares.length; i++) {\n    squares[i] = (i + 1) * (i + 1);\n}\n
\n\n

गतिशील भरने के लिए आदर्श, उदाहरण के लिए, मानों की गणना करना या फ़ाइल से डेटा पढ़ना।

\n\n

4

ब्लॉग

पुस्तक अनुशंसाएँ