logo

자바 문자열 조인()

그만큼 Java 문자열 클래스 Join() 메소드는 주어진 구분 기호로 결합된 문자열을 반환합니다. String Join() 메서드에서는 각 요소마다 구분 기호가 복사됩니다. Join() 메소드는 JDK 1.8부터 Java 문자열에 포함되어 있습니다.

자바를 업그레이드하는 방법

Java String 클래스에는 두 가지 유형의 Join() 메소드가 있습니다.

서명

Join() 메소드의 서명 또는 구문은 다음과 같습니다.

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

매개변수

구분 기호 : 각 요소에 추가할 char 값

강요 : 구분 기호로 첨부할 char 값

보고

구분 기호로 결합된 문자열

예외 발생

NullPointer예외 요소 또는 구분 기호가 null인 경우.

부터

1.8

내부 구현

 // 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 문자열 Join() 메서드 예

파일 이름: StringJoinExample.java

 public class StringJoinExample{ public static void main(String args[]){ String joinString1=String.join('-','welcome','to','javatpoint'); System.out.println(joinString1); }} 
지금 테스트해보세요

산출:

 welcome-to-javatpoint 

Java 문자열 Join() 메서드 예 2

날짜와 시간을 표시하기 위해 아래 예제에서 했던 것처럼 구분 기호를 사용하여 문자열 형식을 지정할 수 있습니다.

파일 이름: 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); } } 

산출:

 25/06/2018 12:10:10 

Java 문자열 Join() 메서드 예 3

null을 구분 기호로 사용하는 경우 null 포인터 예외가 발생합니다. 다음 예에서는 동일한 내용을 확인합니다.

파일 이름: 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); } } 

산출:

 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) 

다만, 구분자를 붙여야 하는 요소가 다음과 같은 경우에는 없는 그렇다면 우리는 모호함을 얻습니다. Join() 메소드가 두 개 있기 때문입니다. 없는 두 가지 유형의 Join() 메소드 모두에 허용됩니다. 다음 예를 관찰하십시오.

scanner.next 자바

파일 이름: 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); } } 

산출:

 /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 문자열 Join() 메서드 예 4

구분 기호를 첨부해야 하는 요소에 일부 문자열이 있고 그 중 일부가 null인 경우 null 요소는 일반 문자열로 처리되며 예외나 오류가 발생하지 않습니다. 예를 통해 이해해 봅시다.

파일 이름: 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); } } 

산출:

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