[JAVA] String๊ณผ StringBuffer

2021. 11. 9. 09:35ใ†JAVA

728x90

String ํด๋ž˜์Šค์™€ StringBuffer ํด๋ž˜์Šค

๋งค๋ฒˆ String ํด๋ž˜์Šค๋งŒ ์‚ฌ์šฉํ•˜๋Š”๋ฐ ์ข…์ข… StringBuffer ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๋ณด๊ณ  ๋‘˜์˜ ์ฐจ์ด์ ์ด ๋ฌด์—‡์ธ์ง€ ๊ถ๊ธˆํ–ˆ์—ˆ์ง€๋งŒ ์‹œ๊ฐ„์ƒ ๋„˜์–ด๊ฐ”๋˜ ๊ธฐ์–ต์ด ์žˆ๋‹ค. 

์ด๋ฒˆ์—๋„ ๊ณต๋ถ€ํ•˜๋Š”๋ฐ StringBuffer๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์„ ๋ณด๊ณ  ์ด ๋‘˜์˜ ์ฐจ์ด์ ์„ ํ™•์‹คํžˆ ์•Œ๊ณ  ๋„˜์–ด๊ฐ€๊ณ  ์‹ถ์–ด์„œ ์ž‘์„ฑํ•œ๋‹ค.! 

 

๋จผ์ € String ํด๋ž˜์Šค์™€ StringBuffer ํด๋ž˜์Šค๋Š” ๋˜‘๊ฐ™์€ ๋ฌธ์ž์—ด์„ ์ฒ˜๋ฆฌํ•˜๋Š” ํด๋ž˜์Šค์ด๋‹ค.

์ด ๋‘˜์˜ ์ฐจ์ด์ ์€ ๋ฉ”๋ชจ๋ฆฌ์ƒ์˜ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•์— ์žˆ๋‹ค. 

๋ฉ”๋ชจ๋ฆฌ์ƒ์˜ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•์ด ์ฆ‰ ์„ฑ๋Šฅ๊ณผ ๊ด€๋ จ์ด ์žˆ๋Š”๋ฐ StringBuffer๊ฐ€ ์„ฑ๋Šฅ์ ์ธ ๋ฉด์—์„œ๋Š” ์ข‹๋‹ค๊ณ  ํ•  ์ˆ˜์žˆ๋‹ค. 

ํ•˜์ง€๋งŒ ๊ธฐ๋ณธ ๋ฌธ์ž์—ด ํด๋ž˜์Šค๋Š” String์ด๋‹ค..! 

 

 

1๏ธโƒฃ String ํด๋ž˜์Šค๋Š” ๋ณ€๊ฒฝ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. 

String ๊ฐ์ฒด๋Š” ์–ธ๋œป๋ณด๋ฉด ๋ณ€๊ฒฝ์ด ๊ฐ€๋Šฅํ•œ ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ด์ง€๋งŒ ( concat()์œผ๋กœ ๋ฌธ์ž์—ด์„ ์ด์–ด์ฃผ๋Š” ๋“ฑ) ์‚ฌ์‹ค ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์ƒˆ๋กœ์šด String ๊ฐ์ฒด๋ฅผ ๋งŒ๋“ค์–ด ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฒƒ์ด๋ผ ์›๋ž˜ String ๊ฐ์ฒด์™€๋Š” ๋‹ค๋ฅด๋‹ค. 

์ฆ‰ ์›๋ž˜ String ๊ฐ์ฒด๋Š” ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์•˜๋‹ค๋Š” ์˜๋ฏธ์ด๋‹ค. 

๋”ฐ๋ผ์„œ ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋ฅผ ๊ณ„์† ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ๋‚ญ๋น„๋œ๋‹ค๊ณ  ์ƒ๊ฐ๋˜๊ธฐ๋„ ํ•œ๋‹ค. 

 

๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  String ํด๋ž˜์Šค๊ฐ€ ๊ธฐ๋ณธ ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ ํด๋ž˜์Šค์ธ ์ด์œ ๊ฐ€ ์žˆ์„ ๊ฒƒ์ด๋‹ค. 

๋ณ€๊ฒฝ์ด ๋ถˆ๊ฐ€ํ•œ ํŠน์ง•์„ ๊ฐ€๋Š” String ํด๋ž˜์Šค๋Š” ์•ˆ์ „ํ•˜๊ฒŒ ๊ณต์œ ๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์ด ์žฅ์ ์ด๋‹ค. 

๋Œ€๋ถ€๋ถ„์˜ ๋ฌธ์ž์—ด์€ ๋ณต์žกํ•œ ๋ฌธ์ž์—ด ์ฒ˜๋ฆฌ๋ณด๋‹ค๋Š” ์ฐธ์กฐ, ๊ณต์œ ๋˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ๊ธฐ ๋•Œ๋ฌธ์— ์ž๋ฐ”์—์„œ ๊ธฐ๋ณธ ๋ฌธ์ž์—ด๋กœ String ํด๋ž˜์Šค๋ฅผ ์„ค์ •ํ•œ ๊ฒƒ์ด๋ผ๊ณ  ํ•œ๋‹ค. 

 

2๏ธโƒฃ StringBuffer ํด๋ž˜์Šค๋Š” ๋ณ€๊ฒฝ์ด ๊ฐ€๋Šฅํ•œ ํด๋ž˜์Šค์ด๋‹ค. 

StringBuffer ํด๋ž˜์Šค๋Š” ๊ฐ€์ง€๊ณ  ์žˆ๋Š” ๋ฌธ์ž์—ด์˜ ๋‚ด์šฉ์„ ๋ณ€๊ฒฝ ๊ฐ€๋Šฅํ•˜๋„๋ก ๋งŒ๋“  ํด๋ž˜์Šค์ด๋‹ค. 

append()๋‚˜ delete() ๊ฐ™์€ ๋ฉ”์„œ๋“œ๋ฅผ ํ†ตํ•ด์„œ StringBuffer๊ฐ์ฒด๊ฐ€ ๊ฐ€์ง„ ๋ฌธ์ž์—ด์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๊ณ , ์ด๋•Œ String ํด๋ž˜์Šค์ฒ˜๋Ÿผ ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๊ธฐ์กด์˜ ๊ฐ์ฒด๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๊ฒƒ์ด๋‹ค. 

 

 

 

๋”ฐ๋ผ์„œ ๋‹จ์ˆœ ์ฐธ์กฐ๊ฐ€ ๋งŽ์€ ๊ฒฝ์šฐ์— String ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ข‹์„ ๊ฒƒ์ด๊ณ , 

๋ฌธ์ž์—ด ์—ฐ์‚ฐ์ด ๋งŽ์€ ๊ฒฝ์šฐ์— StringBuffer ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

728x90