GiantStepDEV

StringBuffer

  • ๊ฐ์ฒด ์ƒ์„ฑ ํ›„ ์‚ฌ์šฉ
  • ๋ฌธ์ž์—ด ์ถ”๊ฐ€ ์‹œ ๊ธฐ์กด์˜ ๋ฌธ์ž์—ด์ด ์ˆ˜์ •๋จ.
  • ๋™๊ธฐํ™” ์ง€์›(๋ฉ€ํ‹ฐ์Šค๋ ˆ๋“œ์—์„œ ์•ˆ์ „ํ•จ)
  • ๊ฐ’์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์–ด์„œ(mutable) ํ•œ๋ฒˆ ์ƒ์„ฑ๋œ ๊ฐ’์€ ์–ธ์ œ๋“ ์ง€ ์ˆ˜์ • ๊ฐ€๋Šฅ

StringBuilder

  • ๊ฐ์ฒด ์ƒ์„ฑ ํ›„ ์‚ฌ์šฉ
  • ๋ฌธ์ž์—ด ์ถ”๊ฐ€ ์‹œ ๊ธฐ์กด ๋ฌธ์ž์—ด์ด ์ˆ˜์ •๋จ.
  • ๋™๊ธฐํ™”๋ฅผ ์ง€์›ํ•˜์ง€ ์•Š์ง€๋งŒ ์„ฑ๋Šฅ์€ ์šฐ์ˆ˜ํ•จ.

String

  • ๊ฐ์ฒด ์ƒ์„ฑ ํ•„์š” ์—†์Œ
  • ๋ฌธ์ž์—ด ์ถ”๊ฐ€ ์‹œ ๊ณ„์† ์ƒˆ๋กœ์šด ๋ฌธ์ž์—ด์ด ๋งŒ๋“ค์–ด ์ง.
  • ๋ฌธ์ž์—ด ์ถ”๊ฐ€๊ฐ€ ๋งŽ์•„์ง€๋ฉด ๋งŽ์•„์งˆ ์ˆ˜๋ก ์„ฑ๋Šฅ ์ €ํ•˜
  • ํ•œ๋ฒˆ ๊ฐ’์ด ์ƒ์„ฑ๋˜๋ฉด ๊ทธ ๊ฐ’์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†์Œ.(immutable)

StringBuffer์™€ String์˜ ๊ฒฐ๊ณผ๋Š” ๋™์ผํ•˜์ง€๋งŒ ๋‚ด๋ถ€์ ์œผ๋กœ ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ๋˜๊ณ  ๋ฉ”๋ชจ๋ฆฌ๊ฐ€ ์‚ฌ์šฉ๋˜๋Š” ๊ณผ์ •์€ ๋‹ค๋ฆ„.
 * StringBuffer ๊ฐ์ฒด๋Š” ํ•œ๋ฒˆ๋งŒ ์ƒ์„ฑ๋œ๋‹ค.

 * String ์ž๋ฃŒํ˜•์€ "+" ์—ฐ์‚ฐ์ด ์žˆ์„ ๋•Œ๋งˆ๋‹ค ์ƒˆ๋กœ์šด Striing ๊ฐ์ฒด๊ฐ€ ์ƒ์„ฑ๋จ.
trim, toUpperCase ๋“ฑ์˜ ๋ฉ”์†Œ๋“œ๋ฅผ ๋ณด๋ฉด ๋ฌธ์ž์—ด์ด ๋ณ€๊ฒฝ๋˜๋Š” ๊ฒƒ ๊ฐ™์ง€๋งŒ ํ•ด๋‹น ๋ฉ”์†Œ๋“œ ์ˆ˜ํ–‰ ์‹œ ๋˜ ๋‹ค๋ฅธ String ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๋ฆฌํ„ดํ•˜๋Š” ๊ฒƒ์ผ๋ฟ ๊ธฐ์กด ๊ฐ’์ด ๋ณ€๊ฒฝ๋˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋‹ค.
๊ทธ๋Ÿผ..๋ฌด์กฐ๊ฑด StringBuffer๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์€๊ฐ€? ๊ทธ๊ฑด ์•„๋‹˜.
StringBuffer๋Š” ๊ฐ์ฒด ์ƒ์„ฑ ํ›„ ์‚ฌ์šฉํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— String ๋ณด๋‹ค ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ๋Ÿ‰๋„ ๋งŽ๊ณ  ์†๋„๋„ ๋А๋ฆผ.
๋”ฐ๋ผ์„œ! ๋ฌธ์ž์—ด ์ถ”๊ฐ€๋‚˜ ๋ณ€๊ฒฝ ๋“ฑ ์ž‘์—…์ด ๋งŽ์€ ๊ฒฝ์šฐ์—๋Š” StringBuffer๋ฅผ..
๋ฌธ์ž์—ด ๋ณ€๊ฒฝ ์ž‘์—…์ด ๊ฑฐ์˜ ์—†๋Š” ๊ฒฝ์šฐ์—๋Š” ๊ทธ๋ƒฅ String์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์œ ๋ฆฌํ•จ.
  1. append() : ๋ฌธ์ž์—ด์„ ์ถ”๊ฐ€ํ•  ๋•Œ ์‚ฌ์šฉ
  2. delete() : ์ „๋‹ฌ๋œ ์ธ๋ฑ์Šค์— ํ•ด๋‹นํ•˜๋Š” ๋ฌธ์ž์—ด ์ œ๊ฑฐ
  3. insert() : ํŠน์ • ์œ„์น˜์— ๋ฌธ์ž์—ด ์‚ฝ์ž…
  4. 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๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์œ ๋ฆฌํ•จ.

 

profile

GiantStepDEV

@kongmi

ํฌ์ŠคํŒ…์ด ์ข‹์•˜๋‹ค๋ฉด "์ข‹์•„์š”โค๏ธ" ๋˜๋Š” "๊ตฌ๋…๐Ÿ‘๐Ÿป" ํ•ด์ฃผ์„ธ์š”!