250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 유니크제약조건
- dfs
- execute
- FetchType
- 스프링 폼
- 동적sql
- 지연로딩
- 데코레이터
- 비관적락
- 연관관계
- 다대다
- exclusive lock
- fetch
- 연결리스트
- 일대다
- 이진탐색
- 다대일
- eager
- CHECK OPTION
- SQL프로그래밍
- 백트래킹
- querydsl
- JPQL
- 힙
- PS
- 즉시로딩
- shared lock
- 스토어드 프로시저
- BOJ
- 낙관적락
Archives
- Today
- Total
흰 스타렉스에서 내가 내리지
String, StringBuffer, StringBuilder 차이점 본문
728x90
- String, StringBuffer, StringBuilder 차이점
- 첫번째 차이점은 String은 불변하다는 특징을 가지고 있어서 수정을 하지못하고 새로운 String 인스턴스가 생성되고 전에 있던 String은 GC에 의해 사라지게 된다. 그래서 좋은 성능을 기대하기는 힘들다. (String 불변, StringBuffer, StringBuilder 가변)
- StringBuffer는 동기화 키워드를 지원하여 멀티쓰레드 환경에서 안전하다는 점(thread-safe) 입니다. 참고로 String도 불변성을 가지기때문에 마찬가지로 멀티쓰레드 환경에서의 안정성(thread-safe)을 가지고 있습니다.
- 반대로 StringBuilder는 동기화를 지원하지 않기때문에 멀티쓰레드 환경에서 사용하는 것은 적합하지 않지만 동기화를 고려하지 않는 만큼 단일쓰레드에서의 성능은 StringBuffer 보다 뛰어납니다
'Java' 카테고리의 다른 글
원시타입과 래퍼타입 사용 시 장단점 (0) | 2023.09.08 |
---|---|
stream과 람다를 활용한 예시 (0) | 2023.07.22 |
List 요소들을 역순으로 변환하는 방법 (0) | 2023.07.21 |
[Java] List에서 중복제거, 효율적인 방법은? (0) | 2023.05.31 |