Free tutorials & notes in Hindi & English · Clean code examples 🧰 मुफ़्त PDF और फ़ोटो टूल्स →
📘 Lesson  ·  Lesson 35

Wrapper Classes & Autoboxing

Wrapper classes क्या हैं

Wrapper classes primitive type को object में बदलती हैं। हर primitive की एक मेल खाती class है: int → Integer, double → Double, वग़ैरह। यह ज़रूरी है क्योंकि Java के कुछ हिस्से (जैसे collections) सिर्फ़ objects के साथ काम करते हैं, primitives के साथ नहीं।

💡 Wrapper = primitive object के रूप में wrap, ताकि जहाँ objects चाहिए वहाँ इस्तेमाल हो।

Wrapper classes

PrimitiveWrapper
intInteger
doubleDouble
charCharacter
booleanBoolean
longLong

आठों primitives में से हर एक की wrapper class है। ध्यान दीजिए ज़्यादातर बस नाम बड़ा करते हैं, पर int, Integer और char, Character बनता है।

Autoboxing और unboxing

Integer boxed = 5;     // autoboxing: int -> Integer
int unboxed = boxed;   // unboxing: Integer -> int
System.out.println(boxed + " " + unboxed);
5 5

Java अपने-आप बदलती है: autoboxing int को Integer में wrap करता है, और unboxing int वापस निकालता है। आप आमतौर पर हाथ से नहीं बदलते — Java संभालती है।

हमें क्यों चाहिए

import java.util.ArrayList;

ArrayList<Integer> list = new ArrayList<>();
list.add(10);       // Integer में autoboxed
list.add(20);
System.out.println(list.get(0));
10

Collections objects store करती हैं, तो आप ArrayList<Integer> लिखते हैं, ArrayList<int> नहीं। Wrapper classes numbers को इन object-based collections में रहने देती हैं, autoboxing conversion करके।

Strings को numbers में बदलना

int n = Integer.parseInt("123");
double d = Double.parseDouble("9.5");
System.out.println(n + d);
132.5

Wrapper classes text को numbers में बदलने को parseInt और parseDouble देती हैं — numeric input को strings के रूप में पढ़ते समय ज़रूरी।

उपयोगी wrapper methods

System.out.println(Integer.MAX_VALUE);     // सबसे बड़ा int
System.out.println(Integer.toBinaryString(10)); // 1010
System.out.println(Character.isDigit('5'));     // true
2147483647
1010
true

Wrapper classes सुविधाजनक constants और methods रखती हैं, जैसे Integer.MAX_VALUE, base conversions, और character जाँच — जो साधारण primitive नहीं दे सकता।

आम गलतियाँ

  • Collection में primitive इस्तेमाल करना। Wrapper इस्तेमाल कीजिए: ArrayList<Integer>, <int> नहीं।
  • Null unboxing। null Integer को int में unbox करना NullPointerException देता है।
  • Wrappers को == से तुलना। Integer objects की value तुलना को equals() इस्तेमाल कीजिए।
  • गलत wrapper नाम। यह Integer और Character है, Int या Char नहीं।

सारांश

  • Wrapper classes primitives को objects में बदलती हैं (int → Integer)।
  • Autoboxing और unboxing इनके बीच अपने-आप बदलते हैं।
  • Collections को wrappers चाहिए क्योंकि वे objects store करती हैं।
  • Strings को numbers में बदलने को parseInt/parseDouble इस्तेमाल कीजिए।
  • Wrappers उपयोगी constants और methods जोड़ती हैं जो primitives में नहीं।

आगे, इन्हें ArrayList में store कीजिए, या types बदलिए type casting से।

अक्सर पूछे जाने वाले प्रश्न (FAQ)

Java में wrapper class क्या है?
Wrapper class primitive type को object में बदलती है। जैसे Integer, int को wrap करता है, और Double, double को। यह primitives को वहाँ इस्तेमाल होने देता है जहाँ objects चाहिए, जैसे collections में।
Autoboxing और unboxing क्या है?
Autoboxing Java द्वारा primitive को उसके wrapper object में अपने-आप बदलना है (int से Integer)। Unboxing उल्टा है (Integer से int)। Java दोनों आपके लिए करती है, तो आप शायद ही मैन्युअल बदलते हैं।
Collections को wrapper classes क्यों चाहिए?
ArrayList जैसी collections objects store करती हैं, primitives नहीं। तो आप ArrayList<Integer> इस्तेमाल करते हैं, ArrayList<int> नहीं। Wrapper classes primitive values को इन object-based collections के अंदर रहने देती हैं।
String को int में कैसे बदलूँ?
Integer.parseInt("123") इस्तेमाल कीजिए, जो int 123 लौटाता है। इसी तरह Double.parseDouble("9.5") double देता है। ये wrapper methods text को numbers में बदलने का standard तरीका हैं।
int और Integer में क्या अंतर है?
int primitive है जो value सीधे store करता है और null नहीं हो सकता। Integer object है जो int को wrap करता है, null हो सकता है, और उपयोगी methods रखता है, पर थोड़ी ज़्यादा memory इस्तेमाल करता है।
← Back to Java Tutorial
🔗

Share this topic with a friend

यह topic किसी दोस्त को भेजें

Found it useful? Send it to a classmate learning the same thing.

अच्छा लगा? जो दोस्त यही सीख रहा है, उसे भेज दीजिए।

💻 लाइव कोड एडिटर

इस पेज के प्रोग्राम यहीं तैयार हैं — चलाएँ, बदलें और सीखें। कुछ भी इंस्टॉल किए बिना।
OneCompiler द्वारा संचालित। कोड एडिटर में अपने आप आ जाता है — Run दबाकर आउटपुट देखें। अगर एडिटर न खुले तो नए टैब में खोलें.
अगला topicMultithreading आपकी प्रगति: 35 / 61 (57%) · Lesson 36 / 61 आगे बढ़ें →

यह lesson कैसा लगा?

आपकी राय से हम content और बेहतर बनाते हैं।

अपना review और सुझाव लिखें (वैकल्पिक)

Review approve होने के बाद आपका नाम और शहर इसके साथ public दिख सकते हैं। Email या phone न लिखें।

▶ CodingEasily on YouTube

Video से सीखें – आसान Hindi में

चुनी हुई video: RDBMS भाग 3 – Class XI Commerce IT

▶ Channel subscribe करें