I Java danner String-sammenkædning en ny streng, der er kombinationen af flere strenge. Der er to måder at sammenkæde strenge i Java:
- Med + (strengsammenkædning) operator
- Ved concat() metode
1) Strengsammenkædning med operatoren + (strengsammenkædning).
Java String-sammenkædningsoperator (+) bruges til at tilføje strenge. For eksempel:
TestStringConcatenation1.java
class TestStringConcatenation1{ public static void main(String args[]){ String s='Sachin'+' Tendulkar'; System.out.println(s);//Sachin Tendulkar } }Test det nu
Produktion:
heltal til streng i java
Sachin Tendulkar
Det Java compiler transformerer ovenstående kode til dette:
String s=(new StringBuilder()).append('Sachin').append(' Tendulkar).toString();
I Java implementeres String-sammenkædning gennem klassen StringBuilder (eller StringBuffer) og dens tilføjelsesmetode. Strengsammenkædningsoperator producerer en ny streng ved at tilføje den anden operand til slutningen af den første operand. String-sammenkædningsoperatoren kan sammenkæde ikke kun streng, men også primitive værdier. For eksempel:
TestStringConcatenation2.java
class TestStringConcatenation2{ public static void main(String args[]){ String s=50+30+'Sachin'+40+40; System.out.println(s);//80Sachin4040 } }Test det nu
Produktion:
80Sachin4040
Bemærk: Efter en streng-literal vil alle + blive behandlet som strengsammenkædningsoperator.
2) Strengsammenkædning ved concat()-metoden
Metoden String concat() sammenkæder den angivne streng til slutningen af den aktuelle streng. Syntaks:
public String concat(String another)
Lad os se eksemplet med String concat()-metoden.
arraylist i java sortering
TestStringConcatenation3.java
class TestStringConcatenation3{ public static void main(String args[]){ String s1='Sachin '; String s2='Tendulkar'; String s3=s1.concat(s2); System.out.println(s3);//Sachin Tendulkar } }Test det nu
Produktion:
Sachin Tendulkar
Ovenstående Java-program sammenkæder to String-objekter s1 og s2 ved brug af concat() metode og gemmer resultatet ind s3 objekt.
maskinskriftsdato
Der er nogle andre mulige måder at sammenkæde strenge i Java,
1. Strengsammenkædning ved hjælp af StringBuilder-klassen
StringBuilder er klasse giver append() metode til at udføre sammenkædningsoperation. Append()-metoden accepterer argumenter af forskellige typer som Objects, StringBuilder, int, char, CharSequence, boolean, float, double. StringBuilder er den mest populære og hurtigste måde at sammenkæde strenge i Java. Det er en foranderlig klasse, hvilket betyder, at værdier gemt i StringBuilder-objekter kan opdateres eller ændres.
StrBuilder.java
public class StrBuilder { /* Driver Code */ public static void main(String args[]) { StringBuilder s1 = new StringBuilder('Hello'); //String 1 StringBuilder s2 = new StringBuilder(' World'); //String 2 StringBuilder s = s1.append(s2); //String 3 to store the result System.out.println(s.toString()); //Displays result } }
Produktion:
Hello World
I ovenstående kodestykke, s1, s2 og s er erklæret som genstand for StringBuilder klasse. s gemmer resultatet af sammenkædning af s1 og s2 ved brug af Tilføj () metode.
2. Strengsammenkædning ved hjælp af format()-metoden
String.format()-metoden gør det muligt at sammenkæde flere strenge ved hjælp af formatspecifikation som %s efterfulgt af strengværdierne eller objekterne.
StrFormat.java
public class StrFormat { /* Driver Code */ public static void main(String args[]) { String s1 = new String('Hello'); //String 1 String s2 = new String(' World'); //String 2 String s = String.format('%s%s',s1,s2); //String 3 to store the result System.out.println(s.toString()); //Displays result } }
Produktion:
js array
Hello World
Her protesterer String s tildeles det sammenkædede resultat af Strings s1 og s2 ved brug af String.format() metode. format() accepterer parametre som formatspecifikation efterfulgt af strengobjekter eller værdier.
3. Strengsammenkædning ved hjælp af String.join()-metoden (Java version 8+)
Metoden String.join() er tilgængelig i Java version 8 og alle ovenstående versioner. String.join()-metoden accepterer argumenter først en separator og en matrix af String-objekter.
StrJoin.java:
public class StrJoin { /* Driver Code */ public static void main(String args[]) { String s1 = new String('Hello'); //String 1 String s2 = new String(' World'); //String 2 String s = String.join('',s1,s2); //String 3 to store the result System.out.println(s.toString()); //Displays result } }
Produktion:
Hello World
I ovenstående kodestykke, String-objektet s gemmer resultatet af String.join('',s1,s2) metode. En separator er angivet inden for anførselstegn efterfulgt af strengobjekter eller række af strengobjekter.
4. Strengsammenkædning ved hjælp af StringJoiner-klassen (Java Version 8+)
StringJoiner-klassen har alle funktionerne i String.join()-metoden. På forhånd kan dens konstruktør også acceptere valgfrie argumenter, præfiks og suffiks.
negation diskret matematik
StrJoiner.java
public class StrJoiner { /* Driver Code */ public static void main(String args[]) { StringJoiner s = new StringJoiner(', '); //StringeJoiner object s.add('Hello'); //String 1 s.add('World'); //String 2 System.out.println(s.toString()); //Displays result } }
Produktion:
Hello, World
I ovenstående kodestykke, StringJoiner-objektet s er erklæret, og konstruktøren StringJoiner() accepterer en separatorværdi. En separator er angivet inden for anførselstegn. Metoden add() tilføjer strenge, der er sendt som argumenter.
5. Strengsammenkædning ved hjælp af Collectors.joining()-metoden (Java (Java Version 8+)
Collectors-klassen i Java 8 tilbyder joining()-metoden, der sammenkæder input-elementerne i samme rækkefølge, som de forekommer.
ColJoining.java
import java.util.*; import java.util.stream.Collectors; public class ColJoining { /* Driver Code */ public static void main(String args[]) { List liststr = Arrays.asList('abc', 'pqr', 'xyz'); //List of String array String str = liststr.stream().collect(Collectors.joining(', ')); //performs joining operation System.out.println(str.toString()); //Displays result } }
Produktion:
abc, pqr, xyz
Her er en liste over String array erklæret. Og et String-objekt str gemmer resultatet af Collectors.joining() metode.