๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
TIL

03/15(๊ธˆ) ๋‚ด์ผ๋ฐฐ์›€์บ ํ”„ Java 57์ผ์ฐจ TIL - StringBuilder

by ๊ฐ์ž๊ฐœ๋ฐœ๊พผ 2024. 3. 15.

 

๐Ÿ“–  ์˜ค๋Š˜์˜ ํ•™์Šต ํ‚ค์›Œ๋“œ

  • StringBuilder

 

๐Ÿฅ”  StringBuilder

์ž๋ฐ”์—์„œ ๋ฌธ์ž์—ด์ด๋ผ๊ณ ํ•˜๋ฉด ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ String์ด ๋– ์˜ค๋ฆ…๋‹ˆ๋‹ค.

String์€ ๋ถˆ๋ณ€๊ฐ์ฒด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. String str1 = "abc";, String str2 = "123"; 2๊ฐœ์˜ String๊ฐ์ฒด๊ฐ€ ์žˆ์„ ๋•Œ,

๋งŒ์•ฝ str1 + str2; ์™€ ๊ฐ™์€ ์—ฐ์‚ฐ์„ ํ•˜๊ฒŒ ๋˜๋ฉด ์ƒˆ๋กœ์šด String์„ ์ƒ์„ฑํ•˜๊ฒŒ๋ฉ๋‹ˆ๋‹ค.

 

์ฆ‰, String๊ฐ์ฒด์™€ String๊ฐ์ฒด๋ฅผ ๋”ํ•˜๋Š” ํ–‰์œ„๋Š” ๋ฉ”๋ชจ๋ฆฌ ํ• ๋‹น๊ณผ ๋ฉ”๋ชจ๋ฆฌ ํ•ด์ œ๋ฅผ ๋ฐœ์ƒํ•˜์‹œํ‚ค๋ฉฐ,

๋”ํ•˜๋Š” ์—ฐ์‚ฐ์ด ๋งŽ์•„์ง€๋ฉด ์„ฑ๋Šฅ์ ์œผ๋กœ ์ข‹์ง€์•Š์Šต๋‹ˆ๋‹ค.

 

๊ทธ๋ž˜์„œ StringBuilder๋ผ๋Š” ๋…€์„์ด ๋‚˜์™”์Šต๋‹ˆ๋‹ค.

StringBuilder๋Š” String๊ณผ ๋ฌธ์ž์—ด์„ ๋”ํ•  ๋•Œ ์ƒˆ๋กœ์šด ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๊ธฐ์กด์˜ ๋ฐ์ดํ„ฐ์— ๋”ํ•˜๋Š” ๋ฐฉ์‹์„

์‚ฌ์šฉํ•˜๋ฏ€๋กœ ์†๋„๊ฐ€ ๋น ๋ฅด๋ฉฐ ์ƒ๋Œ€์ ์œผ๋กœ ๋ถ€ํ•˜๊ฐ€ ์ ์Šต๋‹ˆ๋‹ค.

 

 

โ—๏ธ์‚ฌ์šฉ๋ฒ•

 

  • ์ƒ์„ฑ์ž
    - StringBuilder sb = new StringBuilder(); ๊ฐ์ฒด ์„ ์–ธ
    - StringBuilder sb = new StringBuilder("test"); ๋ฌธ์ž์—ด์„ ๋ฐ”๋กœ ๋„ฃ์„ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ฃผ์š” ๋ฉ”์†Œ๋“œ
    - .append()
    : ๋ฌธ์ž์—ด์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. (sb.append("test"))
    - .insert(int offset, String str)
    : offset ์œ„์ฒด์— str์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. (sb.insert(2, "test"))
    - .replace()
    : ์ฒซ ๋ฒˆ์งธ์™€ ๋‘ ๋ฒˆ์งธ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๋ฐ›๋Š” ์ˆซ์ž ์ธ๋ฑ์Šค์— ์œ„์น˜ํ•œ ๋ฌธ์ž์—ด์„ ๋Œ€์ฒดํ•ฉ๋‹ˆ๋‹ค. (.replace(3, 6, "test"))
    - .substring(int start, int end)
    : ํŒŒ๋ผ๋ฏธํ„ฐ๊ฐ€ ํ•˜๋‚˜๋ผ๋ฉด ํ•ด๋‹น ์ธ๋ฐ์Šค๋ถ€ํ„ฐ ๋๊นŒ์ง€, ๋‘๊ฐœ๋ผ๋ฉด ์‹œ์ž‘์ ๊ณผ ๋์  - 1 (.substring(3), .substring(3, 7))
    - .deleteCharAt(int index)
    : ์ธ๋ฑ์Šค์— ์œ„์น˜ํ•œ ๋ฌธ์ž ํ•˜๋‚˜๋ฅผ ์‚ญ์ œ (.deleteCharAt(3))
    - .delete(int start, int end)
    : start ~ end - 1 ๊นŒ์ง€์˜ ๋ฌธ์ž๋ฅผ ์‚ญ์ œ
    -.toString()
    : String์œผ๋กœ ๋ณ€ํ™˜ํ•œ๋‹ค.
    - .reverse()
    : ํ•ด๋‹น ๋ฌธ์ž๋ฅผ ์ „์ฒด ๋’ค์ง‘๋Š”๋‹ค.

 

๐Ÿ“š  ์˜ค๋Š˜์˜ ํšŒ๊ณ 

StringBuilder๋ฅผ ์‚ฌ์šฉํ•ด์„œ ์„ฑ๋Šฅ์„ ๋†’์—ฌ๋ณด์ž!!