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 |
Tags
- array
- Class
- two pointers
- 코딩테스트
- Matrix
- 코테
- database
- java
- dynamic programming
- hash table
- greedy
- Method
- string
- bit manipulation
- Tree
- Number Theory
- implement
- sorting
- 자바
- Stack
- simulation
- SQL
- Counting
- Binary Search
- Math
- 구현
- geometry
- Data Structure
- Binary Tree
- 파이썬
Archives
- Today
- Total
코린이의 소소한 공부노트
StringBuilder 클래스 본문
StringBuilder 클래스는 StringBuffer 클래스와 메서드 이름도 같고, 사용 방법도 같다.
StringBuffer sb = new StringBuffer();
sb.append("abc");
// 클래스 이름만 바꿔주면 OK
StringBuilder sb = new StringBuilder();
sb.append("abc");
2022.08.18 - [Java] - StringBuffer 클래스
[두 클래스의 차이점]
1. StringBuffer는 동기화되어있다.
- 이 클래스는 멀티 스레드에 안전하다.(thread-safe)
2. StringBuilder는 동기화되어있지 않다.
- 이 클래스는 멀티 스레드에 안전하지 않다.
[스레드에 대한 간단한 설명]
1. 싱글 스레드
- 한 번에 1개의 작업만 함
- 데이터를 공유할 스레드가 없음
- 친구와의 톡방에서 채팅을 하다가 친구가 파일을 보내 줬을 때 그 파일을 다운로드하는 동안 채팅 불가
2. 멀티 스레드
- 한 번에 여러 개의 작업을 함
- 동시에 작업이 이루어지는 스레드와 데이터를 공유함 -> 동기화를 하면 그 데이터가 보호됨
- 친구와의 톡방에서 채팅을 하다가 친구가 파일을 보내 줬을 때 그 파일을 다운로드하는 동안 채팅 가능
싱글 스레드를 이용하는 데 StringBuffer를 사용하면 동기화가 불필요한데 동기화를 하게 된다. 이로 인해 성능이 저하될 것이 염려되는 경우 StringBuilder를 사용하면 된다.
대부분은 싱글 스레드도 StringBuffer를 이용한다.
'Java' 카테고리의 다른 글
문자열의 여러 가지 변환, 오토박싱, 언박싱 (0) | 2022.10.11 |
---|---|
래퍼 클래스, 넘버 클래스 (0) | 2022.10.11 |
Math 클래스 (0) | 2022.08.24 |
StringBuffer 클래스 (0) | 2022.08.18 |
문자열의 결합과 변환 (0) | 2022.08.18 |