반응형
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
- CMD
- HashMap
- Array
- json
- string
- 문자열
- table
- input
- 자바
- 정규식
- Button
- 배열
- Visual Studio Code
- 자바스크립트
- js
- vscode
- IntelliJ
- javascript
- 이클립스
- ArrayList
- map
- CSS
- 인텔리제이
- replace
- html
- 이탈리아
- date
- Java
- Eclipse
- list
Archives
- Today
- Total
어제 오늘 내일
[Java StringBuilder] toString() – 최종 문자열 변환하기 본문
StringBuilder
는 문자열을 효율적으로 수정할 수 있는 클래스이지만,
실제로 프로그램에서 출력하거나 다른 API에 전달하려면 String
으로 변환해야 할 때가 많습니다.
이때 사용하는 메서드가 바로 toString()
입니다.
1. toString() 기본 사용법
public String toString()
StringBuilder
객체에 저장된 내용을 새로운 String 객체로 반환- 이후에는 더 이상 가변적이지 않고 불변(immutable)한 문자열로 사용 가능
StringBuilder sb = new StringBuilder("Hello");
sb.append(" World");
String result = sb.toString();
System.out.println(result);
// 출력: Hello World
👉 StringBuilder
로 문자열을 조합한 뒤, 최종적으로 String
으로 변환합니다.
2. toString()을 꼭 써야 하는 이유
StringBuilder sb = new StringBuilder("Java");
System.out.println(sb);
출력:
Java
👉 콘솔 출력에서는 toString()
이 자동 호출되므로 동일하게 보입니다.
하지만, 실제로 메서드 매개변수나 API 호출에서는 String
타입을 요구하는 경우가 많기 때문에 반드시 toString()
을 명시적으로 호출해야 합니다.
예:
StringBuilder sb = new StringBuilder("Hello");
// String 타입을 요구하는 메서드
printMessage(sb.toString());
void printMessage(String msg) {
System.out.println("메시지: " + msg);
}
👉 sb
자체는 StringBuilder
라서 그대로 넘길 수 없고, toString()
을 통해 변환해야 합니다.
3. 실전 활용 예제
SQL 쿼리 문자열 만들기
StringBuilder query = new StringBuilder();
query.append("SELECT * FROM users ")
.append("WHERE age > ").append(20)
.append(" ORDER BY name");
String sql = query.toString();
System.out.println(sql);
👉 동적으로 문자열을 조립한 뒤, 최종 결과를 String
으로 변환해 DB에 전달.
JSON 형식 만들기
StringBuilder json = new StringBuilder();
json.append("{")
.append("\"name\":\"John\",")
.append("\"age\":30")
.append("}");
String result = json.toString();
System.out.println(result);
👉 StringBuilder
로 가볍게 JSON 조합 후, String
으로 변환.
4. 정리
toString()
은StringBuilder
의 최종 결과를String
으로 반환- 콘솔 출력에서는 자동 호출되지만, API 사용 시에는 반드시 명시 필요
- 동적 문자열 조립 후, 최종 결과를 안전하게 사용하는 데 필수
🔑 한 줄 정리
👉 StringBuilder
에서 만든 문자열을 실제로 사용하려면 반드시 toString()
으로 변환해야 한다!
반응형
'IT > Java' 카테고리의 다른 글
[Java StringBuffer] insert() – 원하는 위치에 문자열 삽입하기 (0) | 2025.09.25 |
---|---|
[Java StringBuffer] append() – 문자열 이어붙이기 (0) | 2025.09.24 |
[Java StringBuilder] substring() – 부분 문자열 추출하기 (0) | 2025.09.23 |
[Java StringBuilder] charAt(), setCharAt() – 특정 문자 읽기와 수정하기 (0) | 2025.09.23 |
[Java StringBuilder] setLength() – 문자열 길이 강제로 조정하기 (0) | 2025.09.22 |
Comments