Type Conversations and Type Casting in Java
जावा में अलग - अलग प्रकार के data को स्टोर करने के लिए बहुत सारें data types बनाये गए हैं, तथा ये अपने क्षमता के हिसाब से मेमोरी में जगह लेते हैं। कई बार हमें एक प्रकार के data type को किसी दूसरे प्रकार के data type में स्टोर करना होता है, इसे Java में Type Conversations कहते हैं।
Types of conversations in Java
Java में दो तरह के conversions होते हैं-
- Widening Type Conversions
- Narrowing Type Conversions
1. Widening Type Conversations - जब हम छोटे क्षमता वाले data type को किसी बड़े क्षमता वाले data type में स्टोर करते हैं, तो इसे Widening Type Conversations कहते है। इसमें data लूज़ होने की संभावना नहीं होता है, इसे Automatic Type Conversations भी कहा जाता है, क्योंकि इसमें conversions अपने आप होता है।
Examples of Widening Type Conversations
class AutomaticTypeConversion{
public static void main(String[] args){
int i = 100;
float f = 102.5f;
double d;
d = i+f;
System.out.println("sum of "+i+" and "+f+"is" +d);
}
}
2. Narrowing Type Conversations - जब हम किसी बड़े क्षमता वाले data type को किसी छोटे क्षमता वाले data type में स्टोर करते हैं, तो इसे Narrowing Type Conversations कहते हैं तथा Java का मनना है कि कोई भी data type बड़ा से छोटा होगा, तो data लूज़ हो सकता है, इसलिए compiler हमें error देता है। Narrowing Type Conversations को Explicit या Manually Type Conversions भी कहा जाता है, क्योंकि इसमें conversation manually करना होता है, compiler तो हमें मना कर रहा होता है।
Examples of Narrowing Type Conversations
class ManuallyTypeConversion{
public static void main(String[] args){
int i = 100;
float f = 102.5f;
int total;
total = i+ (int)f;
System.out.println("Sum of "+i+" and "+f+" is " +total);
}
}
आप देख सकते हैं कि जब हमने float type का मान को int type के variable में स्टोर करने की कोशिश तो (.5) int type के variable में स्टोर नहीं हुआ, क्यूंकी int सिर्फ पूर्णक संख्याओं ही स्टोर कर सकता है जबकि float एक दशमलव संख्या है। हमने यहाँ जबर्दस्ती float को int में बदला, जिससे हमारा data का लूज़ हुआ।
Type Conversions and Type Casting
Java में प्रायः Widening Type Conversations को Type Conversations कहा जाता है, जबकि Narrowing Type Conversations को Type Casting कहा जाता है।
How to do type casting in Java
हम जिस data type का type casting करना चाहते है, उस data type के आगे "()" curly braces लगाकर Braces के अंदर वह data type लिखते हैं, जिसमें हम उस data type की type casting करना चाहते हैं।
Example
class Example{
int i, j;
i = 15;
float f = 27.8f;
j = i + (int)f;
}
ऊपर उदाहरण में हम f जो float प्रकार का data था, उसकी type casting करना चाहते थे, तो उस data type f के आगे curly braces लगाकर braces के अंदर int लिखा, क्योंकि हम integer में उस data type की type casting करना चाहते हैं।
Possible type conversations in Java
1. byte > short > int > long > float > double.
2. short > int > long > float > double.
3. int > long > float > double.
4. long > float > double.
5. float > double.
