logo

Unione stringhe Java()

IL Unisciti alla classe String Java() Il metodo restituisce una stringa unita con un determinato delimitatore. Nel metodo String join(), il delimitatore viene copiato per ciascun elemento. Il metodo join() è incluso nella stringa Java a partire da JDK 1.8.

Esistono due tipi di metodi join() nella classe Java String.

Firma

La firma o la sintassi del metodo join() è riportata di seguito:

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

Parametri

delimitatore : valore char da aggiungere a ciascun elemento

elementi : valore char da allegare al delimitatore

ritorna

stringa unita con delimitatore

Tiri d'eccezione

NullPointerException se l'elemento o il delimitatore è nullo.

Da

1.8

Implementazione interna

 // 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(); } 

Esempio del metodo Java String join()

Nome del file: StringJoinExample.java

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

Produzione:

 welcome-to-javatpoint 

Metodo Java String join() Esempio 2

Possiamo utilizzare un delimitatore per formattare la stringa come abbiamo fatto nell'esempio seguente per mostrare la data e l'ora.

Nome del file: 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); } } 

Produzione:

 25/06/2018 12:10:10 

Metodo Java String join() Esempio 3

Nel caso in cui si utilizzi null come delimitatore, si ottiene l'eccezione del puntatore null. L'esempio seguente conferma la stessa cosa.

Nome del file: 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); } } 

Produzione:

 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) 

Tuttavia, se gli elementi che devono essere allegati con il delimitatore lo sono nullo quindi, otteniamo l'ambiguità. È perché ci sono due metodi join() e nullo è accettabile per entrambi i tipi del metodo join(). Osservare il seguente esempio.

Nome del file: 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); } } 

Produzione:

 /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 

Metodo Java String join() Esempio 4

Se gli elementi che devono essere allegati con il delimitatore hanno delle stringhe, in cui alcune di esse sono nulle, allora gli elementi nulli vengono trattati come una stringa normale e non otteniamo alcuna eccezione o errore. Capiamolo attraverso un esempio.

Nome del file: 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); } } 

Produzione:

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