CodeGym /Java Blog /अनियमित /जावा उदाहरण के साथ चार को इंट में बदलें
John Squirrels
स्तर 41
San Francisco

जावा उदाहरण के साथ चार को इंट में बदलें

अनियमित ग्रुप में प्रकाशित
बहुत बार प्रतीकात्मक जानकारी जो उपयोगकर्ता कीबोर्ड से दर्ज करते हैं, उन्हें संख्याओं में परिवर्तित करने की आवश्यकता होती है या प्रोग्रामर को इससे संख्याएँ प्राप्त करनी चाहिए। ऐसा करने के लिए जावा में कुछ तरीके हैं। इस लेख में, हम चार को इंट वैल्यू में बदलने में हमारी मदद करने के तरीकों का पता लगाएंगे।

अंतर्निहित प्रकार कास्टिंग

टाइप कास्टिंग एक डेटा प्रकार के मान को दूसरे डेटा प्रकार के मान में परिवर्तित करने की प्रक्रिया है। प्रकार के आधार पर टाइप कास्टिंग मैन्युअल या स्वचालित रूप से हो सकती है। प्रकार संगत होना चाहिए। जावा में हमारे पास दो प्रकार के टाइपकास्टिंग, स्पष्ट और निहित हैं। निहित तभी किया जा सकता है जब हम चर को "बड़े" से "छोटे" प्रकार में परिवर्तित करें (कहते हैं, इंट से लंबे समय तक). यदि हम char प्रकार के चर को int डेटा प्रकार में बदलना चाहते हैं, तो अक्सर हमें ASCII तालिका से इसके समतुल्य मान प्राप्त करने की आवश्यकता होती है। प्रत्येक अक्षर या प्रतीक जिसे डिजिटल रूप से दर्ज किया जा सकता है, के अनुरूप अद्वितीय पूर्णांक संख्या होती है। उदाहरण के लिए, अक्षर 'A' में 65 का ASCII कोड है। कास्टिंग टाइप करके, हम वर्ण मान को उसके समतुल्य ASCII पूर्णांक कोड में बलपूर्वक परिवर्तित कर रहे हैं। यहाँ हमारा Java char to int उदाहरण टाइप कास्टिंग का उपयोग कर रहा है।

जावा चार int उदाहरण (टाइपकास्टिंग का उपयोग करके)


package charToInt;

public class Implicit {

       public static void main(String[] args) {
           char char1 = 'A';
           char char2 = 'a';
           int x = char1;
           int y = char2;

           System.out.println("ASCII value of '" + char1 + "' is " + x);
           System.out.println("ASCII value of '" + char2 + "' is " + y);
       }
   }
आउटपुट है:
'A' का ASCII मान 65 है 'a' का ASCII मान 97 है

स्पष्ट प्रकार की कास्टिंग

जैसा कि हमने ऊपर देखा, चार से इंट रूपांतरण के मामले में, यह स्पष्ट रूप से करने के लिए आवश्यक नहीं है, क्योंकि 2 बाइट्स का उपयोग चार को स्टोर करने के लिए किया जाता है, और 4 बाइट्स का उपयोग इंट को स्टोर करने के लिए किया जाता है। यही है, int प्रकार "बड़ा" है। फिर भी, एक अभ्यास के रूप में, हम स्पष्ट रूप से एक चार चर को एक पूर्णांक में डाल सकते हैं। इस ऑपरेशन के लिए, हम कोष्ठकों में (int) का उल्लेख करते हैं।

package charToInt;

public class Explicit {

       public static void main(String[] args) {
           char char1 = 'A';
           System.out.println("ASCII value of '" + char1 + "' is " + (int)char1);
       }
   }
आउटपुट है:
'A' का ASCII मान 65 है

getNumericValue() का उपयोग करना

getNumericValue() कास्टिंग टाइप करने के समान ही काम करता है, लेकिन ASCII तालिका का अनुसरण करने के बजाय, यह यूनिकोड एन्कोडिंग मानक का अनुसरण करता है। ASCII केवल प्रतीकों और वर्णों के एक विशिष्ट सेट का प्रतिनिधित्व कर सकता है जैसे कि लैटिन अक्षर (साथ ही कुछ राष्ट्रीय वर्णमाला प्रतीक), संख्याएँ, विराम चिह्न और नियंत्रण वर्ण। यूनिकोड में दुनिया की हर भाषा के लिए अक्षरों और प्रतीकों वाले एक लाख से अधिक मूल्य हैं। उदाहरण के लिए, यूनिकोड में A का मान \u0041 है जो 10 के संख्यात्मक मान के बराबर है। यदि वर्ण का कोई संख्यात्मक मान नहीं है, तो विधि -1 लौटाती है। गैर-ऋणात्मक पूर्णांक वापस करने के लिए इस पद्धति का उपयोग करना सुविधाजनक हो सकता है।

package charToInt;

public class UsingGetNumericValue {

       public static void main(String[] args) {
           char char1 = '7';
           char char2 = 'A';
           char char3 = '*';

           int x = Character.getNumericValue(char1);
           int y = Character.getNumericValue(char2);
           int z = Character.getNumericValue(char3);

           System.out.println("The Unicode value of '" + char1 + "' is " + x);
           System.out.println("The Unicode value of '" + char2 + "' is " + y);
           System.out.println("The Unicode value of '" + char3 + "' is " + z);

       }
   }
आउटपुट है:
'7' का यूनिकोड मान 7 है 'A' का यूनिकोड मान 10 है '*' का यूनिकोड मान -1 है

ParseInt () का उपयोग करना

ParseInt() चार को इंट में बदलने का एक और तरीका है। यह व्यापक रूप से अन्य संख्यात्मक डेटा प्रकारों जैसे फ्लोट, डबल और लॉन्ग के बीच क्रॉस कन्वर्ट करने के लिए भी उपयोग किया जाता है। ParseInt() को कम से कम एक तर्क और अधिकतम दो तर्कों की आवश्यकता होती है। पहला तर्क उस मूल्य का चर नाम है जिसे हम परिवर्तित कर रहे हैं। दूसरा तर्क मूलांक है जो दशमलव, अष्टाधारी, षोडश आधारी आदि के आधार मान को संदर्भित करता है । "चार जावा में int करने के लिए। यदि आप इस पद्धति का उपयोग करना चाहते हैं तो ध्यान में रखने के लिए दो महत्वपूर्ण बिंदु हैं। ParseInt ()विधि केवल स्ट्रिंग तर्कों को स्वीकार करती है, इसलिए आपको पहले char को String में बदलना चाहिए ( String.valueOf का उपयोग करके )। आप char डेटा प्रकार में संग्रहीत संख्यात्मक मानों को छोड़कर अक्षरों या अन्य प्रतीकों को परिवर्तित करने के लिए parseInt() का उपयोग नहीं कर सकते हैं । यदि आप गैर-संख्यात्मक मान इनपुट करते हैं, तो आपको एक त्रुटि मिलेगी। यहाँ एक जावा उदाहरण है:

package charToInt;

public class ParseInt {
       public static void main(String args[]){
           char ch = '7';
           int n = Integer.parseInt(String.valueOf(ch));
           System.out.println(n);
       }
   }
आउटपुट है:
7
आइए parseInt टन गैर-संख्यात्मक मान का उपयोग करने का प्रयास करें:

package charToInt;

public class ParseInt {
       public static void main(String args[]){
           char ch = 'q';
           int n = Integer.parseInt(String.valueOf(ch));
           System.out.println(n);
       }
   }
आउटपुट है:
धागे में अपवाद "मुख्य" java.lang.NumberFormatException: इनपुट स्ट्रिंग के लिए: java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:68) पर "q" java.base/java.lang.Integer.parseInt पर (Integer.java:652) java.base/java.lang.Integer.parseInt(Integer.java:770) पर charToInt.ValueOf.main(ValueOf.java:6) पर

घटाना '0'

किसी वर्ण को पूर्णांक में बदलने का एक बहुत ही सरल तरीका है। ऐसा करने के लिए, केवल वर्ण "0" वर्ण के ASCII मान को वर्ण से घटाएं। उदाहरण के लिए, वर्ण "7" से int 7 प्राप्त करने के लिए:

int intValue = '7'-' 0 ';
ध्यान दें, यह विशेष रूप से पूर्णांक वर्णों के लिए int मान प्राप्त करने के लिए काम करता है! यदि आप '0' को 'ए' से घटाते हैं, तो विधि केवल शून्य के एएससीआईआई कोड और अक्षर ए के बीच का अंतर लौटा देगी। यहां एक उदाहरण दिया गया है।

package charToInt;

public class SubtractingZero {

   public static void main(String[] args) {
       char char1 = '7';
       char char2 = 'A';
       char char3 = '*';

       System.out.println(char1);
       System.out.println(char1 - '0');

       System.out.println(char2);
       System.out.println(char2 - '0');

       System.out.println(char3);
       System.out.println(char3 - '0');
      
   }

}
आउटपुट है:
7 7ए 17* -6

निष्कर्ष

यदि आपको जावा में char को int में कनवर्ट करने की आवश्यकता है तो विधियों में से एक का उपयोग करें:
  • अंतर्निहित प्रकार कास्टिंग // ASCII मान प्राप्त करना
  • चरित्र.getNumericValue ()
  • Integer.parseInt () // String.valueOf () के साथ जोड़ी में)
  • घटाना '0' // केवल पूर्णांक संख्यात्मक मानों के लिए काम करता है
आप स्पष्ट प्रकार की कास्टिंग भी कर सकते हैं। हालाँकि, यह एक निरर्थक ऑपरेशन है: इसकी आवश्यकता नहीं है, लेकिन यह सिर्फ जावा में काम करता है।
टिप्पणियां
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION