본문 바로가기

기타/면접

[면접] Java에서 String과 StringBuilder, StringBuffer 차이점

1. String

- 한번 값이 할당되면 변하지 않는 불변(immutable)

- 참조변수가 가리키는 곳을 변경(새로운 인스턴스가 생성)하고 기존 할당되어 있던 메모리 영역은 Garbage로 남아있다가 GC(Garbage Collection)에 의해 사라지게 됨

- 문자열이 변하지 않고 자주 읽어 들이는 곳에서 사용

 

2. StringBuilder, StringBuffer

- 한번 값이 할당되더라도 다른 값이 할당되면 변하는 가변(mutable)

- 문자열이 자주 변경되는 곳에서 사용

* StringBuilder와 StringBuffer 차이점

- StringBuilder는 동기화를 지원하지 않기 때문에 단일스레드 환경에서 적합

- StringBuffer는 동기화를 지원하여 멀티스레드 환경에서 Thread Safe

 

참고

- https://ifuwanna.tistory.com/221

'기타 > 면접' 카테고리의 다른 글

[면접] SOAP과 REST 차이점  (0) 2023.09.12
[면접] SQL Server와 Oracle 차이점  (0) 2023.03.17