यदि किसी प्रोग्राम को उसी के कई मानों के साथ काम करना है डाटा प्रकार, आप घोषणा कर सकते हैं परिवर्तनशील प्रत्येक संख्या के लिए। उदाहरण के लिए, एक प्रोग्राम जो लॉटरी नंबर प्रदर्शित करता है:
int lotteryNumber1 = 16;
int lotteryNumber2 = 32;
int lotteryNumber3 = 12;
int lotteryNumber4 = 23;
int lotteryNumber5 = 33;int lotteryNumber6 = 20;
मूल्यों के साथ काम करने का एक और अधिक सुरुचिपूर्ण तरीका जो एक साथ समूहीकृत किया जा सकता है एक सरणी का उपयोग करना है। एक सरणी एक कंटेनर है जो डेटा प्रकार के मूल्यों की एक निश्चित संख्या रखता है। उपरोक्त उदाहरण में, लॉटरी संख्याओं को एक इंट सरणी में एक साथ रखा जा सकता है:
int [] लॉटरीजोन = {१६,३२,१२,२३,३३,२०};
बक्से की एक पंक्ति के रूप में एक सरणी के बारे में सोचो। सरणी में बक्से की संख्या बदल नहीं सकती है। प्रत्येक बॉक्स एक मूल्य पकड़ सकता है जब तक कि वह उसी डेटा प्रकार का हो जैसा कि अन्य बॉक्सों के भीतर निहित मूल्यों का होता है। आप एक बॉक्स के अंदर देख सकते हैं कि इसमें क्या मूल्य है या बॉक्स की सामग्री को दूसरे मूल्य से बदल सकते हैं। जब सरणियों के बारे में बात करते हैं, तो बक्से को तत्व कहा जाता है।
घोषणा और एक ऐरे की शुरुआत
किसी ऐरे के लिए घोषित बयान उसी के समान है जिसका उपयोग किया जाता है किसी अन्य चर को घोषित करें. इसमें सरणी के नाम से पीछा किया जाने वाला डेटा प्रकार शामिल है - केवल अंतर डेटा प्रकार के आगे वर्ग कोष्ठक का समावेश है:
int [] intArray;
फ्लोट [] फ्लोटअरे;char [] charArray;
घोषणा के बयान ऊपर संकलक को बताएं कि
intArrayचर एक सरणी है
ints,
floatArrayकी एक सरणी है
तैरतातथा
charArrayवर्णों की एक सरणी है। किसी भी चर की तरह, उनका उपयोग तब तक नहीं किया जा सकता है जब तक कि इसे एक मान निर्दिष्ट करके प्रारंभ नहीं किया जाता है। किसी सरणी के लिए किसी मान के असाइनमेंट के लिए एक सरणी के आकार को परिभाषित करना होगा:
intArray = नया int [10];
कोष्ठक के अंदर की संख्या परिभाषित करती है कि सरणी कितने तत्वों को रखती है। उपरोक्त असाइनमेंट स्टेटमेंट दस तत्वों के साथ एक इंट सरणी बनाता है। बेशक, कोई कारण नहीं है कि घोषणा और असाइनमेंट एक बयान में नहीं हो सकते हैं:
float [] floatArray = new float [10];
एरे आदिम डेटा प्रकारों तक सीमित नहीं हैं। वस्तुओं की सारणियाँ बनाई जा सकती हैं:
स्ट्रिंग [] नाम = नया स्ट्रिंग [5];
एक सरणी का उपयोग करना
एक बार जब किसी सरणी को आरम्भ कर दिया जाता है, तो तत्व सरणी के सूचकांक का उपयोग करके उन्हें दिए गए मान रख सकते हैं। सूचकांक सरणी में प्रत्येक तत्व की स्थिति को परिभाषित करता है। पहला तत्व 0 पर है, दूसरा तत्व 1 पर है और इसी तरह। यह ध्यान रखना महत्वपूर्ण है कि पहले तत्व का सूचकांक 0 है। यह सोचना आसान है क्योंकि किसी सरणी में दस तत्व होते हैं जो सूचकांक 0 से 9 के बजाय 1 से 10 तक होता है। उदाहरण के लिए, यदि हम लॉटरी संख्याओं पर वापस जाते हैं उदाहरण के लिए हम एक सरणी बना सकते हैं जिसमें 6 तत्व होते हैं और तत्वों को लॉटरी संख्या निर्दिष्ट करते हैं:
int [] लॉटरीन्यूज = नया int [६];
लॉटरी नट [0] = 16;
लॉटरी लॉटरी [1] = ३२;
लॉटरी लॉटरी [2] = 12;
लॉटरी नॉट [3] = 23;
लॉटरी लॉटरी [4] = 33;लॉटरी लॉटरी [5] = 20;
घोषणा विवरण में तत्वों के लिए मान डालकर एक सरणी में तत्वों को भरने का एक शॉर्टकट है:
int [] लॉटरीजोन = {१६,३२,१२,२३,३३,२०};स्ट्रिंग [] नाम = {"जॉन", "जेम्स", "जूलियन", "जैक", "जोनाथन"};
प्रत्येक तत्व के मान को घुंघराले ब्रैकेट की एक जोड़ी के अंदर रखा गया है। मूल्यों का क्रम निर्धारित करता है कि किस तत्व को सूचकांक स्थिति 0 से शुरू होने वाला मान सौंपा गया है। सरणी में तत्वों की संख्या घुंघराले कोष्ठक के अंदर मूल्यों की संख्या से निर्धारित होती है।
किसी तत्व का मान प्राप्त करने के लिए उसके सूचकांक का उपयोग किया जाता है:
System.out.println ("पहले तत्व का मूल्य" + लॉटरी है] [0]);
यह जानने के लिए कि एक सरणी में कितने तत्वों की लंबाई वाले फ़ील्ड का उपयोग किया गया है:
System.out.println ("लॉटरी नट सरणी में" + लॉटरी है ।Nength.length + "तत्व");
ध्यान दें: लंबाई पद्धति का उपयोग करते समय एक सामान्य गलती यह है कि लंबाई की स्थिति को सूचकांक स्थिति के रूप में उपयोग करना है। यह हमेशा एक त्रुटि का परिणाम होगा क्योंकि किसी सरणी के सूचकांक स्थिति 0 से लंबाई - 1 तक होती है।
बहुआयामी Arrays
अब तक हम जिन सरणियों को देख रहे हैं, उन्हें एक आयामी (या एकल आयामी) सरणियों के रूप में जाना जाता है। इसका मतलब है कि उनके पास केवल तत्वों की एक पंक्ति है। हालांकि, सरणियों में एक से अधिक आयाम हो सकते हैं। एक बहुआयामी वास्तव में एक सरणी है जिसमें सरणियाँ शामिल हैं:
int [] [] लॉटरीजोन = {{१६,३२,१२,२३,३३,२०}, {३४,४०,३,११,३३,२४}};
एक बहुआयामी सरणी के लिए सूचकांक में दो संख्याएँ होती हैं:
System.out.println ("तत्व 1,4 का मान" + लॉटरी है [1] [4]);
यद्यपि एक बहुआयामी सरणी के भीतर निहित सरणियों की लंबाई समान लंबाई की नहीं होती है:
स्ट्रिंग [] [] नाम = नया स्ट्रिंग [५] []];
एक कापी की नकल करना
किसी सरणी को कॉपी करने के लिए सबसे आसान तरीका है
arraycopyसिस्टम वर्ग की विधि।
arraycopyविधि का उपयोग सरणी के सभी तत्वों या उनमें से एक उपधारा को कॉपी करने के लिए किया जा सकता है। वहाँ पाँच मापदंडों को पारित कर रहे हैं
arraycopyविधि - मूल सरणी, किसी तत्व की प्रतिलिपि बनाने के लिए अनुक्रमणिका स्थिति, नए सरणी, से सम्मिलित करने के लिए अनुक्रमणिका स्थिति, प्रतिलिपि करने के लिए तत्वों की संख्या:
सार्वजनिक स्थैतिक शून्य सरणी (ऑब्जेक्ट src, int srcPos, ऑब्जेक्ट डेस्ट, इंट डेस्टपॉस, इंट लेंथ)
उदाहरण के लिए, पिछले चार तत्वों वाले एक नए सरणी को बनाने के लिए
पूर्णांकसरणी:
int [] लॉटरीजोन = {१६,३२,१२,२३,३३,२०};
int [] newArrayNumbers = नया int [4];System.arraycopy (लॉटरी लॉटरी, 2, newArrayNumbers, 0, 4);
चूंकि सरणियाँ एक निश्चित लंबाई हैं
arraycopyविधि एक सरणी के आकार को बदलने के लिए एक उपयोगी तरीका हो सकता है।
सरणियों के बारे में अपने ज्ञान को आगे बढ़ाने के लिए आप Arrays का उपयोग करके सरणियों में हेरफेर करने के बारे में सीख सकते हैं क्लास और डायनेमिक एरेज़ बनाना (यानी, एलीमेंट्स जब तत्वों की संख्या निश्चित संख्या नहीं है) का उपयोग करते हुए ArrayList वर्ग.