सरणी एक कंटेनर है जो निश्चित संख्या में आइटम्स को धारण कर सकता है और ये आइटम्स एक ही प्रकार के होने चाहिए। अधिकांश डेटा संरचनाएं अपने एल्गोरिदम को लागू करने के लिए सरणियों का उपयोग करती हैं। सरणी की अवधारणा को समझने के लिए निम्नलिखित महत्वपूर्ण शर्तें हैं।
- एलिमेंट: सरणी में संग्रहीत प्रत्येक आइटम को एलिमेंट कहा जाता है।
- इंडेक्स: सरणी में एलिमेंट के प्रत्येक स्थान का एक संख्यात्मक इंडेक्स होता है, जिसका उपयोग एलिमेंट की पहचान के लिए किया जाता है।
ऑब्जेक्ट सरणी बनाना
हां, चूंकि ऑब्जेक्ट्स को जावा में डेटा प्रकार (रेफरेंस) माना जाता है, आप किसी विशेष क्लास के प्रकार की सरणी बना सकते हैं और, उसे उस क्लास के इंस्टेंसेस से भर सकते हैं।
उदाहरण
निम्नलिखित जावा उदाहरण में Std नामक एक क्लास है और बाद में प्रोग्राम में हम Std प्रकार की एक सरणी बना रहे हैं, इसे भर रहे हैं, और सरणी के सभी एलिमेंट्स पर एक मेथड आह्वान कर रहे हैं।
class Std { private static int year = 2018; private String name; private int age; public Std(String name, int age){ this.name = name; this.age = age; } public void setName(String name) { this.name = name; } public void setAge(int age) { this.age = age; } public void display(){ System.out.println("Name: "+this.name); System.out.println("Age: "+this.age); System.out.println("Year: "+Std.year); } } public class Sample { public static void main(String args[]) throws Exception { //Std प्रकार के ऑब्जेक्ट्स को स्टोर करने के लिए सरणी बनाना Std st[] = new Std[4]; //सरणी भरना st[0] = new Std("Bala", 18); st[1] = new Std("Rama", 17); st[2] = new Std("Raju", 15); st[3] = new Std("Raghav", 20); //सरणी में प्रत्येक ऑब्जेक्ट पर display मेथड आह्वान करना for(int i = 0; i<st.length; i++) { st[i].display(); System.out.println(" "); } } }आउटपुट
Name: Bala Age: 18 Year: 2018 Name: Rama Age: 17 Year: 2018 Name: Raju Age: 15 Year: 2018 Name: Raghav Age: 20 Year: 2018
ऑब्जेक्ट सरणियों के नुकसान
- सरणी में ऑब्जेक्ट स्टोर करने के लिए अक्सर हमें सरणी की लंबाई जानने की आवश्यकता होती है, जो हर समय संभव नहीं है।
- एक बार ऑब्जेक्ट सरणी बनाने के बाद आप इसकी सामग्री को मॉडिफाई नहीं कर सकते, ऐसा करने के लिए कोई मेथड्स उपलब्ध नहीं हैं (कलेक्शन के विपरीत)।
- मेमोरी मुद्दों को ध्यान में रखते हुए ऑब्जेक्ट्स की सरणी का उपयोग करने की अनुशंसा नहीं की जाती है।