logo

Java-merkkijono join()

The Java-merkkijonoluokka join() menetelmä palauttaa merkkijonon, joka on yhdistetty tietyllä erottimella. String join() -menetelmässä erotin kopioidaan jokaiselle elementille. Join()-menetelmä sisältyy Java-merkkijonoon JDK 1.8:sta lähtien.

Java String -luokassa on kahdenlaisia ​​join()-menetelmiä.

Allekirjoitus

Join()-menetelmän allekirjoitus tai syntaksi on annettu alla:

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

Parametrit

erotin : char-arvo, joka lisätään jokaiseen elementtiin

satunnaisluku javassa

elementtejä : char-arvo, joka liitetään erottimella

Palauttaa

yhdistetty merkkijono erottimella

Poikkeusheitot

NullPointerException jos elementti tai erotin on nolla.

Siitä asti kun

1.8

Sisäinen toteutus

 // 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-merkkijono join() -menetelmäesimerkki

Tiedoston nimi: StringJoinExample.java

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

Lähtö:

 welcome-to-javatpoint 

Java-merkkijono join() -menetelmän esimerkki 2

Voimme käyttää erotinta muotoilemaan merkkijonoa, kuten teimme alla olevassa esimerkissä päivämäärän ja ajan näyttämiseksi.

Tiedoston nimi: 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); } } 

Lähtö:

Regressiotestaus ohjelmistotestauksessa
 25/06/2018 12:10:10 

Java-merkkijono join() -menetelmän esimerkki 3

Jos erottimena käytetään nollaa, saamme nollaosoittimen poikkeuksen. Seuraava esimerkki vahvistaa saman.

Tiedoston nimi: 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); } } 

Lähtö:

 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) 

Kuitenkin, jos erottimella kiinnitettävät elementit ovat tyhjä sitten ymmärrämme epäselvyyden. Se johtuu siitä, että on olemassa kaksi join()-menetelmää ja tyhjä on hyväksyttävä molemmille join()-menetelmän tyypeille. Huomioi seuraava esimerkki.

Tiedoston nimi: StringJoinExample4.java

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

Lähtö:

 /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-merkkijono join() -menetelmän esimerkki 4

Jos erottimella liitettävässä elementissä on joitakin merkkijonoja, joissa muutama niistä on nolla, niin nollaelementtejä käsitellään normaalina merkkijonona, emmekä saa mitään poikkeusta tai virhettä. Ymmärretään se esimerkin kautta.

Tiedoston nimi: 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); } } 

Lähtö:

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