(Java) StringBuilder 문자열 만들기

2022. 3. 12. 03:34Java

반응형

왜 자바는 String += char가 안 될까?

(정말 답답하다 C++도 되는데..)

 

고맙다고 해야할지 모르겠지만, 이와 비슷한 StringBuilder라는 것을 만들어 두었다.

 

StringBuilder에 대해서 알아보자.

 

import java.util.*;

class Main{
	public static void main(String[] args) {
        char[] arr = {'a', 'b', 'c', 'd'};
        String s = "";
        StringBuilder stringBuilder = new StringBuilder();
        for(char c : arr) {
        	stringBuilder.append(c);
        }
        s = stringBuilder.toString();
    }
}

 

StringBuilder는 클래스이기 때문에 이렇게 선언해준다.

 

StringBuilder는 append 메서드를 이용해서 추가를 할 수 있다. 

이게 파이썬, C++에서 흔히 보는 += 라고 생각하면 된다.

 

이렇게 append를 한 후 toString()을 하면 문자열로 변환이 된다.

 


StringBuilder는 append외에도 다양한 메서드를 지원한다.

 

대표적으로 reverse가 있다. 문자열 뒤집을 때 이거 쓰면 된다.

 

어떻게 쓰느냐

 

import java.util.*;

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

 

이렇게 하면 문자열이 뒤집힌다.

sb가 문자열이 아니기 때문에 문자열로 사용하고 싶다면

 

s = sb.toString()을 하면 된다. (참쉽죠?)

 

 

반응형

'Java' 카테고리의 다른 글

(Java) Interface와 Abstract class의 차이(인터페이스와 추상클래스)  (0) 2022.07.16
(Java) JVM 구조와 이해  (0) 2022.07.16
(Java) 문자열 잘라 배열에 저장  (0) 2022.03.12
logging이란?  (0) 2022.02.23
(Java) JDBC란?  (0) 2022.02.20