logo

Java-tekenreeks join()

De Java String-klasse join() methode retourneert een tekenreeks die is samengevoegd met een bepaald scheidingsteken. Bij de methode String join() wordt het scheidingsteken voor elk element gekopieerd. De methode join() is sinds JDK 1.8 opgenomen in de Java-tekenreeks.

Er zijn twee typen join()-methoden in de Java String-klasse.

Handtekening

De handtekening of syntaxis van de join()-methode wordt hieronder gegeven:

 public static String join(CharSequence delimiter, CharSequence... elements) and public static String join(CharSequence delimiter, Iterable elements) 

Parameters

scheidingsteken : char-waarde die bij elk element moet worden toegevoegd

elementen : char-waarde die moet worden bijgevoegd met een scheidingsteken

Geeft terug

samengevoegde tekenreeks met scheidingsteken

Uitzondering gooit

NullPointerException als element of scheidingsteken nul is.

Sinds

1.8

Interne implementatie

 // type - 1 public static String join(CharSequence delimiter, CharSequence... elements) { Objects.requireNonNull(elements); Objects.requireNonNull(delimiter); StringJoiner jnr = new StringJoiner(delimiter); for (CharSequence c: elements) { jnr.add(c); } return jnr.toString(); } 
 // type - 2 public static String join(CharSequence delimiter, CharSequence... elements) { Objects.requireNonNull(elements); Objects.requireNonNull(delimiter); StringJoiner jnr = new StringJoiner(delimiter); for (CharSequence c: elements) { jnr.add(c); } return jnr.toString(); } public static String join(CharSequence delimiter, Iterable elements) { Objects.requireNonNull(elements); Objects.requireNonNull(delimiter); StringJoiner jnr = new StringJoiner(delimiter); for (CharSequence c: elements) { joiner.add(c); } return jnr.toString(); } 

Java String join() Methode Voorbeeld

Bestandsnaam: StringJoinExample.java

 public class StringJoinExample{ public static void main(String args[]){ String joinString1=String.join('-','welcome','to','javatpoint'); System.out.println(joinString1); }} 
Test het nu

Uitgang:

aardnoot versus pinda
 welcome-to-javatpoint 

Java String join() Methode Voorbeeld 2

We kunnen een scheidingsteken gebruiken om de tekenreeks op te maken, zoals we in het onderstaande voorbeeld hebben gedaan om de datum en tijd weer te geven.

Bestandsnaam: StringJoinExample2.java

 public class StringJoinExample2 { public static void main(String[] args) { String date = String.join('/','25','06','2018'); System.out.print(date); String time = String.join(':', '12','10','10'); System.out.println(' '+time); } } 

Uitgang:

 25/06/2018 12:10:10 

Java String join() Methode Voorbeeld 3

In het geval dat null als scheidingsteken wordt gebruikt, krijgen we de null pointer-uitzondering. Het volgende voorbeeld bevestigt hetzelfde.

Bestandsnaam: StringJoinExample3.java

 public class StringJoinExample3 { // main method public static void main(String argvs[]) { String str = null; str = String.join(null, 'abc', 'bcd', 'apple'); System.out.println(str); } } 

Uitgang:

 Exception in thread 'main' java.lang.NullPointerException at java.base/java.util.Objects.requireNonNull(Objects.java:221) at java.base/java.lang.String.join(String.java:2393) at StringJoinExample3.main(StringJoinExample3.java:7) 

Als de elementen die moeten worden gekoppeld met het scheidingsteken dat wel zijn nul dan krijgen we de dubbelzinnigheid. Dit komt omdat er twee join()-methoden zijn, en nul is acceptabel voor beide typen van de methode join(). Neem het volgende voorbeeld in acht.

js base64-decodering

Bestandsnaam: StringJoinExample4.java

 public class StringJoinExample4 { // main method public static void main(String argvs[]) { String str = null; str = String.join('India', null); System.out.println(str); } } 

Uitgang:

 /StringJoinExample4.java:7: error: reference to join is ambiguous str = String.join('India', null); ^ both method join(CharSequence,CharSequence...) in String and method join(CharSequence,Iterable) in String match /StringJoinExample4.java:7: warning: non-varargs call of varargs method with inexact argument type for last parameter; str = String.join('India', null); ^ cast to CharSequence for a varargs call cast to CharSequence[] for a non-varargs call and to suppress this warning 1 error 1 warning 

Java String join() Methode Voorbeeld 4

Als de elementen die met het scheidingsteken moeten worden gekoppeld een aantal strings hebben, waarvan er enkele nul zijn, dan worden de null-elementen behandeld als een normale string en krijgen we geen enkele uitzondering of fout. Laten we het begrijpen aan de hand van een voorbeeld.

Bestandsnaam: StringJoinExample5.java

 public class StringJoinExample5 { // main method public static void main(String argvs[]) { String str = null; // one of the element is null however it will be treated as normal string str = String.join('-', null, ' wake up ', ' eat ', ' write content for JTP ', ' eat ', ' sleep '); System.out.println(str); } } 

Uitgang:

 null- wake up - eat - write content for JTP - eat - sleep