concat

String클래스에서 제공하는 기본메서드

합친 문자열을 String으로 생성한다

새로운 인스터스를 생성하기 때문에 성능이나 속도면에선 좋지 않다

public class Test1 {
    public static void main(String[] args) {
        String apple = "제이름은";
        String banana = "티모입니다";
        System.out.println("결과 : " + apple.concat(banana));
    }
}

⇒ 제이름은티모입니다

‘+’ 연산자

가장 직관적인 방법

StringBuilder로 변환 ⇒ Append로 문자열을 더하고 다시 toString함수로 문자열을 반환해주는 방식

일반적으로 간단한 문자열의 추가의 경우 + 연산자를 사용함

public class Test1 {
    public static void main(String[] args) {
        String apple = "제이름은";
        String banana = "티모입니다";
        System.out.println("결과 : " + apple + banana);
    }
}

StringBuilder -싱글스레드

StringBuilder를 선언하고 append함수를 통해 문자열을 덧붙일 수 있다

StringBuilder 와 String과 가장 다른 점은 수정가능하다는 것이다

String은 변경불가능한 객체이기 때문에 값을 수정하려면 다른 값을 가진 String을 다시 대입하는 식으로 처리해야 한다

StringBuilder의 경우, 복잡하거나 바복적인 문자열 수정시 사용하는 것이 좋다

예를 들면 for문이나 while문 같은 반복문안에 문자열을 계속 추가해야 하는 경우에는 + 연산자보다 StringBuilder를 사용하는 것이 좋다

public class Test1 {
    public static void main(String[] args) {
        String apple = "제이름은";
        String banana = "티모입니다";

        StringBuilder sb = new StringBuilder();
        sb.append(apple);
        sb.append(banana);

        System.out.println("결과 : " + sb.toString());
    }
}

StringBuffer -멀티스레

StringBuilder와 호환가능하기 때문에 사용법은 동일함