CodeGym /Java Blog /यादृच्छिक /जावा मधील स्ट्रिंग कॉन्कटेनेशन
John Squirrels
पातळी 41
San Francisco

जावा मधील स्ट्रिंग कॉन्कटेनेशन

यादृच्छिक या ग्रुपमध्ये प्रकाशित केले
Java String concatenation हे दोन किंवा अधिक स्ट्रिंग्समध्ये सामील होण्यासाठी आणि एक नवीन परत करण्यासाठी एक ऑपरेशन आहे. तसेच, स्ट्रिंग्सचे प्रकार कास्ट करण्यासाठी कंकॅटनेशन ऑपरेशनचा वापर केला जाऊ शकतो. तुम्ही Java मध्ये दोन वेगवेगळ्या प्रकारे स्ट्रिंग्स एकत्र करू शकता.

concat() पद्धत

Concat() पद्धत दिलेल्या स्ट्रिंगच्या शेवटी निर्दिष्ट स्ट्रिंग जोडते आणि नंतर परत येते आणि नंतर तयार केलेली नवीन स्ट्रिंग परत करते. तीन किंवा अधिक स्ट्रिंग्स जोडण्यासाठी आपण concat() पद्धत वापरू शकतो .

concat() पद्धत स्वाक्षरी


public String concat(String str)
पद्धत वर्तमान स्ट्रिंगच्या शेवटी स्ट्रिंग स्ट्रिंगला जोडते. उदाहरणार्थ:

String s1 = “Hello ”; 
s1.concat("World")
एक नवीन स्ट्रिंग "हॅलो वर्ल्ड" परत करते.

Concat() पद्धतीचे उदाहरण

दोन स्ट्रिंग्स त्यांच्या इनिशिएलायझेशननंतर कॉन्कॅट करूया, नंतर आणखी स्ट्रिंग्स कॉन्कॅट करू. आणि आणखी एक मनोरंजक उदाहरण: आम्ही एक पद्धत तयार करणार आहोत जी युक्तिवादानुसार भिन्न संदेश परत करेल.

public class ConcatTest {

    public static void main(String[] args) {
        //String concat with concat() method 
        String string1 = "I learn ";
        String string2 = "concatenation in Java";
        //here we use concat() method to join the two strings above
        String result = string1.concat(string2);
        System.out.println(result);
        //concat() method to join 4 strings
        String myWebSite = "Code".concat("Gym").concat(".cc").concat("/quest");
        System.out.println(myWebSite); // here we've got  "CodeGym.cc/quest"

        System.out.println(myMessage(true));
        System.out.println(myMessage(false));
    }

    private static String myMessage(boolean b) {   //concat() method with selection statement 
        return "I have".concat(b ? " " : "n't ").concat("got it");
    }

}
आउटपुट आहे:
मी Java CodeGym.cc/quest मध्ये एकत्रीकरण शिकतो मला ते मिळाले आहे मला ते मिळाले नाही
हे जाणून घेणे महत्त्वाचे आहे की concat() पद्धत स्ट्रिंग बदलत नाही, परंतु सध्याची एक आणि पॅरामीटर म्हणून पास केलेली एक विलीन केल्यामुळे एक नवीन तयार करते. त्यामुळे पद्धत नवीन स्ट्रिंग ऑब्जेक्ट परत करते, म्हणूनच तुम्ही स्ट्रिंग कॉन्कॅटच्या अशा लांब साखळ्या तयार करू शकता.

ओव्हरलोड केलेले ऑपरेटर "+" आणि "+=" वापरून एकत्रीकरण

तुम्ही या दोन ऑपरेटर्सचा वापर संख्यांप्रमाणेच करू शकता. ते concat() प्रमाणेच कार्य करतात . चला “कोड” आणि “जिम” स्ट्रिंग एकत्र करू.

public class StringConcat {
   public static void main(String[] args) {

       String myString = "Code" + "Gym";
       myString+= ".cc";
       System.out.println(myString);
   }
}
सहसा Java वापरकर्ता वर्गांसाठी ओव्हरलोडिंग ऑपरेशनला परवानगी देत ​​नाही, परंतु हे दोन ऑपरेटर ओव्हरलोड म्हणून काम करतात. तुम्हाला वाटेल की + ऑपरेटरच्या आत concat() लपवत आहे , परंतु प्रत्यक्षात, येथे दुसरी यंत्रणा वापरली आहे. जर आपण जावा प्रोग्रॅमचा बायकोड पाहिला, तर आपल्याला दिसेल की स्ट्रिंगबिल्डर तयार झाला आहे आणि त्याची ऍपेंड() पद्धत वापरली आहे. जावा कंपाइलर “+” ऑपरेटर पाहतो आणि ओळखतो की ऑपरेंड हे स्ट्रिंग आहेत, आदिम प्रकार नाहीत. त्यामुळे ते concat सारखे काम करते.

public class StringTest2 {

   public static void main(String[] args) {

       String hello = "hello";
       String world = " world!";

       String helloworld = (new StringBuilder().append(hello).append(world).toString());
       System.out.println(helloworld);
       //this is the same as:
       String result = hello + world;
   }
}

Concat(0) किंवा +?

जर तुम्हाला फक्त एकदाच स्ट्रिंग विलीन करायची असेल, तर concat() पद्धत वापरा. इतर सर्व प्रकरणांसाठी, + किंवा Stringbuffer / StringBuilder ऑपरेटर वापरणे चांगले आहे . तसेच, + ऑपरेटर प्रकार रूपांतरित करण्यासाठी वापरला जातो. जर ऑपरेंडपैकी एक समान असेल, उदाहरणार्थ, संख्या आणि दुसरी स्ट्रिंग असेल, तर बाहेर पडल्यावर आपल्याला एक स्ट्रिंग मिळेल. उदाहरण:

public class StringConcat {
   public static void main(String[] args) {
       int myInt = 5;
       String myString = " days";

       System.out.println(myInt + myString);
       boolean b = (myInt + myString) instanceof String;
       System.out.println(b);
   }
}
(myInt + myString) स्ट्रिंग आहे का हे तपासण्यासाठी आम्ही instanceof वापरतो. या प्रोग्रामचे आउटपुट येथे आहे:
५ दिवस खरे
हे देखील लक्षात ठेवा की एक स्ट्रिंग शून्य असल्यास + ऑपरेटर आणि कॉन्कॅट() वेगळ्या पद्धतीने कार्य करतात. + किंवा += ऑपरेटर वापरताना एक ऑपरेंड फक्त एक असेल — एक स्ट्रिंग, तर, आम्ही आधीच म्हटल्याप्रमाणे, टाइप रूपांतरण होते. हेच शून्यावर लागू होते. आम्हाला फक्त एक नवीन स्ट्रिंग मिळेल:

public class StringConcat {
   public static void main(String[] args) {

       String myString = "book ";
       System.out.println(myString + null);
       System.out.println((myString + null) instanceof String);
   }
}
आउटपुट आहे:
पुस्तक शून्य सत्य
जर आपण त्याच ऑपरेशनसाठी concat() पद्धत लागू केली, तर आपल्याला NullPointerException मिळेल .

public class StringConcat {
   public static void main(String[] args) {

       String myString = "book ";
       System.out.println(myString.concat(null));

   }
}
आउटपुट आहे:
StringConcat.main(StringConcat.java:6) येथे java.base/java.lang.String.concat(String.java:1972) थ्रेड "मुख्य" java.lang.NullPointerException मधील अपवाद
टिप्पण्या
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION