CodeGym /Java Blog /यादृच्छिक /जावा उदाहरणांसह चारला इंटमध्ये रूपांतरित करा
John Squirrels
पातळी 41
San Francisco

जावा उदाहरणांसह चारला इंटमध्ये रूपांतरित करा

यादृच्छिक या ग्रुपमध्ये प्रकाशित केले
कीबोर्डवरून वापरकर्त्यांनी प्रविष्ट केलेली प्रतीकात्मक माहिती संख्यांमध्ये रूपांतरित करणे आवश्यक आहे किंवा प्रोग्रामरला त्यातून क्रमांक मिळणे आवश्यक आहे. जावामध्ये ते करण्यासाठी काही पद्धती आहेत. या लेखात, आम्ही चारला इंट व्हॅल्यूमध्ये रूपांतरित करण्यात मदत करण्याच्या पद्धती शोधून काढू.

अव्यक्त प्रकार сcasting

प्रकार कास्टिंग ही एका डेटा प्रकाराचे मूल्य दुसर्‍या डेटा प्रकाराच्या मूल्यामध्ये रूपांतरित करण्याची प्रक्रिया आहे. प्रकार कास्टिंग मॅन्युअल किंवा प्रकारांवर अवलंबून स्वयंचलित असू शकते. प्रकार सुसंगत असावेत. Java मध्ये आम्हाला दोन प्रकारचे टाइपकास्टिंग मिळाले आहे, स्पष्ट आणि अंतर्निहित. जर आपण व्हेरिएबलला "मोठ्या" वरून "लहान" प्रकारात रूपांतरित केले तरच गर्भित केले जाऊ शकते .). जर आपल्याला char टाइपचे व्हेरिएबल int डेटा प्रकारात रूपांतरित करायचे असेल, तर बहुतेक वेळा आपल्याला ASCII टेबलमधून त्याचे समतुल्य मूल्य मिळवावे लागते. प्रत्येक वर्णमाला किंवा चिन्ह जे डिजिटली प्रविष्ट केले जाऊ शकतात त्यास संबंधित अद्वितीय पूर्णांक संख्या असते. उदाहरणार्थ, 'A' वर्णमाला 65 चा ASCII कोड आहे. टाईप कास्टिंग करून, आम्ही कॅरेक्टर व्हॅल्यूला त्याच्या समतुल्य ASCII पूर्णांक कोडमध्ये सक्तीने रूपांतरित करत आहोत. येथे आमचे Java char to int उदाहरण आहे टाइप कास्टिंग वापरून.

Java चार ते इंट उदाहरण (टाईपकास्टिंग वापरून)


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() ही char ला int मध्ये रूपांतरित करण्याची दुसरी पद्धत आहे. हे इतर संख्यात्मक डेटा प्रकारांमध्ये तसेच फ्लोट, दुहेरी आणि लांब यांच्यामध्ये क्रॉस रूपांतर करण्यासाठी देखील वापरले जाते. ParseInt() ला किमान एक आर्ग्युमेंट आणि जास्तीत जास्त दोन वितर्क आवश्यक आहेत. पहिला युक्तिवाद आपण रूपांतरित करत असलेल्या मूल्याचे व्हेरिएबल नाव आहे. दुसरा युक्तिवाद म्हणजे मूलांक जो दशांश, अष्टक, हेक्साडेसिमल इ.च्या मूळ मूल्याचा संदर्भ देतो. संख्या प्रणाली लक्षात घेऊन डेटा प्रकार रूपांतरित करण्याच्या ParseInt() च्या क्षमतेमुळे , "संख्यात्मक" रूपांतरित करण्यासाठी हा एक इष्टतम पर्याय आहे. "char to int Java मध्ये. ही पद्धत वापरायची असल्यास दोन महत्त्वाचे मुद्दे लक्षात ठेवावेत. parseInt()पद्धत केवळ स्ट्रिंग आर्ग्युमेंट्स स्वीकारते, म्हणून तुम्ही प्रथम char ला स्ट्रिंगमध्ये रूपांतरित केले पाहिजे ( String.valueOf वापरून ). अक्षर डेटा प्रकारात साठवलेल्या अंकीय मूल्यांशिवाय तुम्ही अक्षरे किंवा इतर चिन्हे रूपांतरित करण्यासाठी parseInt() वापरू शकत नाही . तुम्ही गैर-संख्यात्मक मूल्ये इनपुट केल्यास, तुम्हाला एक त्रुटी मिळेल. येथे Java उदाहरण आहे:

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);
       }
   }
आउटपुट आहे:
चला 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: इनपुट स्ट्रिंगसाठी: "q" java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:68) येथे 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 ';
लक्षात ठेवा, हे केवळ पूर्णांक वर्णांसाठी इंट मूल्ये मिळविण्यासाठी कार्य करते! तुम्ही 'A' मधून '0' वजा केल्यास, म्हणा, 'A', पद्धत फक्त शून्य आणि अक्षर A यामधील फरक परत करेल. येथे एक उदाहरण आहे.

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

निष्कर्ष

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