Java에서 효율적으로 문자열 추가

Farkhanda Athar 2023년10월12일
  1. Java에서 문자열을 추가하려면 java.lang.String 클래스의 concat()을 사용하십시오
  2. + 연산자를 사용한 문자열 연결
  3. java.lang.Stringconcat() 메서드 사용
  4. StringBuffer를 사용하여 Java에서 문자열 연결
  5. Java에서 문자열 연결에 StringBuilder 사용
Java에서 효율적으로 문자열 추가

Java에서 문자열 연결에 대해 이야기할 때 + 연산자는 문자열을 가장 효율적으로 추가하기 위해 떠오릅니다. Java는 오버로딩에 대한 지원을 제공하지 않기 때문에 문자열이 그러한 동작을 갖는 것은 특별합니다. + 연산자 외에 Java에서 문자열을 추가하는 데 사용되는 다양한 방법이 있습니다.

  • StringBuffer
  • StringBuilder

Java에서 문자열을 추가하려면 java.lang.String 클래스의 concat()을 사용하십시오

StringBufferStringBuilder 클래스가 모두 이 용도로 사용됩니다. StringBuilder는 문자열을 연결하는 가장 빠른 방법이기 때문에 중요합니다. StringBuffer는 동기화된 방법으로 인해 두 번째로 우선 순위가 지정되고 다른 방법은 이 두 가지 방법보다 1000배 더 느립니다. 여기에서 이 네 가지 방법의 예를 볼 것입니다.

public class Main {
  public static void main(String args[]) {
    // 1st method of concat
    String str1 = "Most";
    str1 = str1.concat(" Welcome");
    str1 = str1.concat(" to University");
    System.out.println(str1);
    // 2nd method of concat
    String str2 = "Today";
    str2 = str2.concat(" is").concat(" your first").concat(" day");
    System.out.println(str2);
  }
}

출력:

Most Welcome to University
Today is your first day

+ 연산자를 사용한 문자열 연결

이것은 Java에서 문자열과 숫자 값을 결합하는 가장 간단한 방법입니다. 사용자가 문자열 연결의 시작 부분에 short, char 또는 int와 같은 두 개 이상의 기본 값이 있는 경우 명시적으로 문자열로 변환해야 합니다. 예를 들어 System.out.println(300, + 'B'+ "")은 300B를 인쇄하지 않으며 B의 ASCII 값을 취하여 300에 추가하여 366을 인쇄합니다. 반면에 , System.out.println('', + 300 +'B')을 사용하면 300B가 인쇄됩니다. 모든 + 연산자 스캔은 String()을 호출하기 전에 다양한 StringBuilder.append() 호출로 연결됩니다.

java.lang.Stringconcat() 메서드 사용

concat(String str) 메서드는 일부 특정 문자열을 문자열 끝에 연결합니다. 두 문자열의 결합된 길이와 동일한 길이의 char[]를 할당합니다. 이 메서드는 String 데이터를 해당 문자열에 복사하고 아래에 주어진 char[] 입력을 복사하지 않는 private String 생성자에서 새 String 개체를 만듭니다.

import java.util.Scanner;
public class Main {
  public static void main(String args[]) {
    Scanner sc = new Scanner(System.in);
    System.out.println("Enter the first string: ");
    String str1 = sc.next();
    System.out.println("Enter the second string: ");
    String str2 = sc.next();

    String result = str1 + str2;
    System.out.println(result);
  }
}

출력:

Enter the first string: 
United
Enter the second string: 
Kingdom
UnitedKingdom

StringBuffer를 사용하여 Java에서 문자열 연결

이것은 StringBuilder를 사용할 수 없을 때 Java의 여러 문자열, 정수 및 기타 부분을 연결하는 가장 적절한 방법입니다. concat()+ 연산자 메서드보다 빠르게 작동합니다. 이 접근 방식의 유일한 단점은 StringBuffer에 의한 추가 메서드가 동기화된다는 것입니다. 작업 방법은 StringBuilder 방법과 유사합니다. 또한 char, int, short 등을 연결하는 다양한 오버로드된 추가 방법을 제공합니다.

public class Main {
  public static void main(String args[]) {
    StringBuffer sb = new StringBuffer("My ");
    sb.append("Country");
    System.out.println(sb);
  }
}

출력:

My Country

Java에서 문자열 연결에 StringBuilder 사용

이것은 Java에서 문자열을 연결하는 가장 좋은 방법 중 하나입니다. 가장 중요한 것은 사용자가 여러 문자열을 연결할 때입니다. 이 방법은 사용자가 여러 문자열을 추가해야 할 때 사용하기 쉽고 효율적입니다. 그러나 이 방법은 사용자가 문자열을 연결해야 하는 경우 일반적으로 사용되지 않습니다.

public class Main {
  public static void main(String args[]) {
    StringBuilder sb = new StringBuilder("My ");
    sb.append("Country");
    System.out.println(sb);
  }
}

출력:

My Country

관련 문장 - Java String