๐ป
Java ํ๋ก๊ทธ๋๋ฐ - [๊ธฐ๋ณธ API ํด๋์ค] StringBuffer ํด๋์ค ๋ณธ๋ฌธ
Java ํ๋ก๊ทธ๋๋ฐ - [๊ธฐ๋ณธ API ํด๋์ค] StringBuffer ํด๋์ค
๋ํจ๋ 2020. 5. 13. 10:22
๊ฐ์ฒด ํด์์ฝ๋ hashCode() : ๊ฐ์ฒด ํด์์ฝ๋๋ ๊ฐ์ฒด๋ฅผ ์๋ณํ ํ๋์ ์ ์๊ฐ์ ๋งํ๋ค. Object ํด๋์ค์ hashCode() ๋ฉ์๋๋ ๊ฐ์ฒด์ ๋ฉ๋ชจ๋ฆฌ ๋ฒ์ง๋ฅผ ์ด์ฉํด์ ํด์์ฝ๋๋ฅผ ๋ง๋ค์ด ๋ฆฌํดํ๊ธฐ ๋๋ฌธ์ ๊ฐ์ฒด๋ง๋ค ๋ค๋ฅธ ๊ฐ์ ๊ฐ์ง๊ณ ์๋ค. ์ฃผ์๊ฐ์ ํค๊ฐ์ ๊ฐ์ง๋ค.
๋ฌธ์์ด์ ๊ฒฐํฉํ๋ + ์ฐ์ฐ์๋ฅผ ๋ง์ด ์ฌ์ฉํ๋ฉด ํ ์๋ก ๊ทธ๋งํผ String์ ๊ฐ์ฒด์ ์๊ฐ ๋์ด๋๊ธฐ ๋๋ฌธ์, ๋ฉ๋ชจ๋ฆฌ ๊ณต๊ฐ์ ๋ ์ฐจ์งํ๊ฒ ๋๋ค(ํ๋ก๊ทธ๋จ ์ฑ๋ฅ์ ๋๋ฆฌ๊ฒ ํ๋ ์์ธ). ๋ฐ๋ผ์ ๋ฌธ์์ด์ ๋ณ๊ฒฝํ๋ ์์ ์ด ๋ง์ ๊ฒฝ์ฐ์๋ Stringํด๋์ค๋ฅผ ์ฌ์ฉํ๋ ๊ฒ๋ณด๋ค๋ java.lang ํจํค์ง์ StringBuffer ๋๋ StringBuilder ํด๋์ค๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ์ข๋ค. ์ด ๋ ํด๋์๋ ๋ด๋ถ ๋ฒํผ(buffer: ๋ฐ์ดํฐ๋ฅผ ์์๋ก ์ ์ฅํ๋ ๋ฉ๋ชจ๋ฆฌ) ์ ๋ฌธ์์ด์ ์ ์ฅํด ๋๊ณ , ๊ทธ ์์์ ์ถ๊ฐ, ์์ , ์ญ์ ์์ ์ ํ ์ ์๋๋ก ์ค๊ณ๋์ด ์๋ค.
StringBuffer๋ ์๋๊ฐ ์ข ๋ ๋น ๋ฅด๊ณ , ์ถ๊ฐ/์ญ์ /์์ ์์ ์ ํ ์ ์์ง๋ง StringBuffer๋ฅผ ์ฌ์ฉํ๋ ๊ฒ ํญ์ ์ข์ ๊ฒ๋ง์ ์๋๋ค. ์๋ฅผ ๋ค์ด ์์ ๊ทธ๋ฆผ์ StringBuffer๋ก ์ ์ธ๋ str์ ๊ฒฝ์ฐ๋ฅผ ๋ณด๋ฉด ๊ธฐ์กด์ ๋ฐ์ดํฐ(5๋ฐ์ดํธ) ์ ํญ์ 16๋ฐ์ดํธ๋ฅผ ๋ํ 21๋ฐ์ดํธ์ ๊ณต๊ฐ์ ์ฐจ์งํ๊ฒ ๋๋ค.
๋ฉ์๋ | ์ค๋ช |
append(...) | ๋ฌธ์์ด ๋์ ์ฃผ์ด์ง ๋งค๊ฐ๊ฐ์ ์ถ๊ฐ |
insert(int offset, ...) | ๋ฌธ์์ด ์ค๊ฐ์ ์ฃผ์ด์ง ๋งค๊ฐ๊ฐ์ ์ถ๊ฐ |
delete(int start, int end) | ๋ฌธ์์ด์ ์ผ๋ถ๋ถ์ ์ญ์ |
deleteCharAt(int index) | ๋ฌธ์์ด์์ ์ฃผ์ด์ง index์ ๋ฌธ์๋ฅผ ์ญ์ |
replace(int start, int end, String str) | ๋ฌธ์์ด์ ์ผ๋ถ๋ถ์ ๋ค๋ฅธ ๋ฌธ์์ด๋ก ๋์น |
reverse() | ๋ฌธ์์ด์ ์์๋ฅผ ๋ค๋ฐ๊ฟ |
setCharAt(int idnex, char ch) | ๋ฌธ์์ด์์ ์ฃผ์ด์ง index์ ๋ฌธ์๋ฅผ ๋ค๋ฅธ ๋ฌธ์๋ก ๋์น |