StringBuffer
- ๊ฐ์ฒด ์์ฑ ํ ์ฌ์ฉ
- ๋ฌธ์์ด ์ถ๊ฐ ์ ๊ธฐ์กด์ ๋ฌธ์์ด์ด ์์ ๋จ.
- ๋๊ธฐํ ์ง์(๋ฉํฐ์ค๋ ๋์์ ์์ ํจ)
- ๊ฐ์ ๋ณ๊ฒฝํ ์ ์์ด์(mutable) ํ๋ฒ ์์ฑ๋ ๊ฐ์ ์ธ์ ๋ ์ง ์์ ๊ฐ๋ฅ
StringBuilder
- ๊ฐ์ฒด ์์ฑ ํ ์ฌ์ฉ
- ๋ฌธ์์ด ์ถ๊ฐ ์ ๊ธฐ์กด ๋ฌธ์์ด์ด ์์ ๋จ.
- ๋๊ธฐํ๋ฅผ ์ง์ํ์ง ์์ง๋ง ์ฑ๋ฅ์ ์ฐ์ํจ.
String
- ๊ฐ์ฒด ์์ฑ ํ์ ์์
- ๋ฌธ์์ด ์ถ๊ฐ ์ ๊ณ์ ์๋ก์ด ๋ฌธ์์ด์ด ๋ง๋ค์ด ์ง.
- ๋ฌธ์์ด ์ถ๊ฐ๊ฐ ๋ง์์ง๋ฉด ๋ง์์ง ์๋ก ์ฑ๋ฅ ์ ํ
- ํ๋ฒ ๊ฐ์ด ์์ฑ๋๋ฉด ๊ทธ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์์.(immutable)
StringBuffer์ String์ ๊ฒฐ๊ณผ๋ ๋์ผํ์ง๋ง ๋ด๋ถ์ ์ผ๋ก ๊ฐ์ฒด๊ฐ ์์ฑ๋๊ณ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์ฌ์ฉ๋๋ ๊ณผ์ ์ ๋ค๋ฆ.
* StringBuffer ๊ฐ์ฒด๋ ํ๋ฒ๋ง ์์ฑ๋๋ค.
* String ์๋ฃํ์ "+" ์ฐ์ฐ์ด ์์ ๋๋ง๋ค ์๋ก์ด Striing ๊ฐ์ฒด๊ฐ ์์ฑ๋จ.
trim, toUpperCase ๋ฑ์ ๋ฉ์๋๋ฅผ ๋ณด๋ฉด ๋ฌธ์์ด์ด ๋ณ๊ฒฝ๋๋ ๊ฒ ๊ฐ์ง๋ง ํด๋น ๋ฉ์๋ ์ํ ์ ๋ ๋ค๋ฅธ String ๊ฐ์ฒด๋ฅผ ์์ฑํ์ฌ ๋ฆฌํดํ๋ ๊ฒ์ผ๋ฟ ๊ธฐ์กด ๊ฐ์ด ๋ณ๊ฒฝ๋๋ ๊ฒ์ ์๋๋ค.
๊ทธ๋ผ..๋ฌด์กฐ๊ฑด StringBuffer๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข์๊ฐ? ๊ทธ๊ฑด ์๋.
StringBuffer๋ ๊ฐ์ฒด ์์ฑ ํ ์ฌ์ฉํด์ผ ํ๊ธฐ ๋๋ฌธ์ String ๋ณด๋ค ๋ฉ๋ชจ๋ฆฌ ์ฌ์ฉ๋๋ ๋ง๊ณ ์๋๋ ๋๋ฆผ.
๋ฐ๋ผ์! ๋ฌธ์์ด ์ถ๊ฐ๋ ๋ณ๊ฒฝ ๋ฑ ์์
์ด ๋ง์ ๊ฒฝ์ฐ์๋ StringBuffer๋ฅผ..
๋ฌธ์์ด ๋ณ๊ฒฝ ์์
์ด ๊ฑฐ์ ์๋ ๊ฒฝ์ฐ์๋ ๊ทธ๋ฅ String์ ์ฌ์ฉํ๋ ๊ฒ์ด ์ ๋ฆฌํจ.
- append() : ๋ฌธ์์ด์ ์ถ๊ฐํ ๋ ์ฌ์ฉ
- delete() : ์ ๋ฌ๋ ์ธ๋ฑ์ค์ ํด๋นํ๋ ๋ฌธ์์ด ์ ๊ฑฐ
- insert() : ํน์ ์์น์ ๋ฌธ์์ด ์ฝ์
- substring() : ๋ฌธ์์ด์ ๊ตฌ๊ฐ์ ์ ํด ์๋ผ๋
public class Main {
public static void main(String[] args) {
StringBuffer sb = new StringBuffer();
sb.append("hello");
sb.append(" ");
sb.append("Python");
sb.insert(0,"์๋
ํ์ธ์~~");
//sb.delete(1,3); // 1๋ฒ ์ธ๋ฑ์ค์์ ๋ถํฐ 3๋ฒ ๋ฏธ๋ง๊น์ง ์ง์์ง
System.out.println(sb);
System.out.println(sb.substring(7));
System.out.println(sb.substring(0,7));
}
}
์๋
ํ์ธ์~~hello Python
hello Python
์๋
ํ์ธ์~~
- StringBuilder๋ StringBuffer ์ฌ์ฉ๋ฒ๊ณผ ๋์ผ
๋๊ธฐํ๋ฅผ ๊ณ ๋ คํ ํ์๊ฐ ์๋ ์ํฉ(๋ฉํฐ์ค๋ ๋๊ฐ ์๋ ๊ฒฝ์ฐ)์์๋ StringBuilder๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ ๋ฆฌํจ.