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
- 알고리즘
- 브랜치
- CRUD
- @NoArgsConstructor
- 코드업
- entity
- stringbuffer
- 부트캠프
- Codeup
- DTO
- git
- 에러
- 자바
- 프로그래머스
- html tag
- 깃허브
- java
- 부스트코스
- github
- 캡슐화
- 기본생성자
- HashSet
- 파이썬
- @builder
- @AllArgsConstructor
- SQL
- Python
- HTML
- lv1
- 상속
Archives
- Today
- Total
잉?
[프로그래머스] 문자열 뒤집기 + StringBuffer 사용법, 사용이유 본문
class Solution {
public String solution(String my_string) {
// String자료형을 return해주는 solution이라는 메서드에 my_string 매개변수를 가진다.
StringBuffer sb = new StringBuffer(my_string);
// StringBuffer 객체를 만들고 그 안에 my_string의 값을 넣어준다.
String value = sb.reverse().toString();
// String자료형을 가진 value변수에 = sb에 저장된 my_string값을.toString()을 이용해 문자열로 리턴해준다.
return value;
// 문자열로 저장된 value값을 리턴
}
}
이번 문제를 통해 StringBuffer의 개념을 알게 되었다.
StringBuffer란?
StringBuffer는 buffer라고 하는 독립적인 공간을 가지는데 주로 문자열을 추가하거나 변경할 때 사용한다.
append를 통해 buffer안에 값을 추가할 수 있다.
sb.append("추가할 값");
StringBuffer 사용이유?
String을 이용하여 문자열을 추가할 경우
String value = ""; // String 객체 생성(1)
value += "Welcome"; // +연산자로 인해 String 객체 생성(2)
value += " to the "; // +연산자로 인해 String 객체 생성(3)
value += "StringBuffer"; // +연산자로 인해 String 객체 생성(4)
System.out.println(value); // "Welcome to the StringBuffer"
+연산자를 사용할 때마다 새로운 String 객체가 생성된다. 총 4번 String 객체가 생성되었다.
StringBuffer를 이용하면 객체가 한 번만 생성된다.
StringBuffer sb = new StringBuffer(); // StringBuffer 객체 생성(1)
sb.append("Welcome");
sb.append(" to the ");
sb.append("StringBuffer");
String value = sb.toString();
System.out.println(value); // "Welcome to the StringBuffer"
StringBuffer를 사용하는 이유는 공간의 낭비가 없고, 속도 또한 빨라진다.
참고
'알고리즘_Algorism > 프로그래머스' 카테고리의 다른 글
[프로그래머스] lv.1 콜라 문제 (JAVA 자바) (0) | 2023.08.04 |
---|---|
[프로그래머스] lv.1 푸드 파이트 대회 (JAVA 자바) (0) | 2023.08.02 |
[프로그래머스] 두 개 뽑아서 더하기 (JAVA 자바) (0) | 2023.07.31 |
[프로그래머스] 문자열 내 마음대로 정렬하기 (JAVA 자바) (0) | 2023.07.27 |
[프로그래머스] 직사각형 넓이 구하기 + 다차원 배열(2차원 배열) (0) | 2023.06.14 |
Comments