일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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
- 인프런
- 백엔드 스쿨3기
- JPA
- 알고리즘
- 카카오2023신입공채
- 영속성
- 전적 검색
- 리코쳇로봇
- BFS
- 라이엇 API
- 포트 죽이는법
- 엔에첸
- 올리브영 고객센터
- DFS
- 프로그래머스
- 조회수중복
- 스프링부트
- 인텔리제이 에러
- 최주호
- java
- already use
- 자바ORM표준JPA프로그래밍
- 시소 짝꿍
- 자바
- 테크잇
- 백준
- 김영한
- 더티체킹
- 멋쟁이사자차럼
- 스프링 입문을 위한 자바 객체 지향의 원리와 이해
Archives
- Today
- Total
My Blog
자바 String, StringBuilder 차이 본문
자바가 String을 만들 때
String a = "*";
을 하면 실제로 힙에는 * 이라는 변수(실제로는 참조변수)가 만들어진다.
여기서
a += "*";을 하면
* 이라는 값은 냅두고
** 이라는 값을 또 추가해서 만든다.
이게 여러 개가 되면 메모리 낭비가 엄청 심해진다.
그래서 StringBuilder을 사용하면 이 문제를 해결할 수 있다.
StringBuilder sb = new StringBuilder();
sb.appned("*"); //문자열 추가
sb.toString(); //출력
StringBuilder는 내부적으로 sb하나만 가지고 있는 상황에서 문자열을 계속해서 추가하는 것이다.
그래서 쓸데없는 메모리 낭비가 없다.
728x90
'자바' 카테고리의 다른 글
자바 인스턴스 생성 시 메모리에 올라오는 것 (0) | 2023.11.30 |
---|---|
자바의 상속은 상속이 아닌 확장이다 (0) | 2023.11.29 |
자바 스트림에 대해서 공부해보자 (0) | 2023.05.27 |
자바 객체에서 toString() (0) | 2023.02.27 |
언제 static을 붙일까? (0) | 2023.02.11 |
Comments