String.format


String ํด๋ž˜์Šค์˜ format ๋ฉ”์„œ๋“œ

Java์—์„œ๋Š” String ํด๋ž˜์Šค์˜ format ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ง€์ •๋œ ์„œ์‹์— ๋”ฐ๋ผ ๋ฌธ์ž์—ด์„ ๋ฐ˜ํ™˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

int num = 1;
String str = String.format("๋ณ€์ˆ˜ num์˜ ๋‚ด์šฉ์€ %d์ด๋‹ค.", num);
System.out.println(str);

์œ„ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ถœ๋ ฅ๋ฉ๋‹ˆ๋‹ค:

๋ณ€์ˆ˜ num ๋‚ด์šฉ์€ 1์ด๋‹ค.

String.format์˜ ์ฒซ ๋ฒˆ์งธ ์ธ์ˆ˜๋Š” ์ง€์ •๋œ ๊ทœ์น™(์„œ์‹)์— ๋”ฐ๋ผ ์ž‘์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋‘ ๋ฒˆ์งธ ์ธ์ˆ˜๋ถ€ํ„ฐ๋Š” ์ฒซ ๋ฒˆ์งธ ์ธ์ˆ˜์—์„œ ์ง€์ •ํ•œ ์„œ์‹์— ํ• ๋‹นํ•  ๊ฐ’์„ ์ „๋‹ฌํ•ฉ๋‹ˆ๋‹ค.

๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ ์œ ํ˜• ๋‹ค๋ฃจ๊ธฐ

์ฐธ/๊ฑฐ์ง“ ๊ฐ’ (%b)

true๋‚˜ false์™€ ๊ฐ™์€ ์ฐธ/๊ฑฐ์ง“ ๊ฐ’์„ ๋‹ค๋ฃฐ ๋•Œ๋Š” %b๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

String str = String.format("TRUE๋Š” %b, FALSE๋Š” %b", true, false);
System.out.println(str);

์ถœ๋ ฅ:

TRUE๋Š” true, FALSE๋Š” false

๋ฌธ์ž์—ด ๊ฐ’ (%s)

๋ฌธ์ž์—ด์„ ๋‹ค๋ฃฐ ๋•Œ๋Š” %s๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

String str = String.format("๋ฌธ์ž์—ด์˜ ๋‚ด์šฉ์€ %s", "SEOK");
System.out.println(str);

์ถœ๋ ฅ:

๋ฌธ์ž์—ด์˜ ๋‚ด์šฉ์€ SEOK

๋ฌธ์ž ๊ฐ’ (%c)

๋ฌธ์ž๋ฅผ ๋‹ค๋ฃฐ ๋•Œ๋Š” %c๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

String str = String.format("๊ท€ํ•˜์˜ ํ‰๊ฐ€๋Š” %c", 'A');
System.out.println(str);

์ถœ๋ ฅ:

๊ท€ํ•˜์˜ ํ‰๊ฐ€๋Š” A

๋ถ€๋™ ์†Œ์ˆ˜์  ๊ฐ’ (%f)

๋ถ€๋™ ์†Œ์ˆ˜์  ๊ฐ’์„ ๋‹ค๋ฃฐ ๋•Œ๋Š” %f๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

String str = String.format("์›์ฃผ์œจ์€ %f", 3.1415);
System.out.println(str);

์ถœ๋ ฅ:

์›์ฃผ์œจ์€ 3.141500

๋‚ ์งœ ๊ฐ’ (%tXX)

๋‚ ์งœ๋ฅผ ๋‹ค๋ฃฐ ๋•Œ๋Š” %tXX ํ˜•์‹์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. (XX๋Š” ๋‚ ์งœ ์œ ํ˜•์„ ๋‚˜ํƒ€๋‚ด๋Š” ํŠน์ˆ˜ ๋ฌธ์ž์ž…๋‹ˆ๋‹ค.)

Date date = new Date();
String date_str = String.format("%tH:%tM", date.getTime(), date.getTime());
System.out.println(date_str);

์ถœ๋ ฅ:

ํ˜„์žฌ ์‹œ๊ฐ„:๋ถ„

(๋‚ ์งœ ์œ ํ˜• ๋ฐ ์˜ˆ์ œ ์ƒ๋žต)

์ˆซ์ž ๊ฐ€๊ณตํ•˜์—ฌ ์ถœ๋ ฅ

์ฝค๋งˆ๋กœ ๊ตฌ๋ถ„

์ˆซ์ž๋ฅผ ์€ํ–‰ ๊ณ„์ขŒ์™€ ๊ฐ™์ด ์ฝค๋งˆ๋กœ ๊ตฌ๋ถ„ํ•˜๋ ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

String str = String.format("%,d", 123456789);
System.out.println(str);

์ถœ๋ ฅ:

123,456,789

8์ง„์ˆ˜๋กœ ํ‘œ์‹œ

8์ง„์ˆ˜๋กœ ํ‘œ์‹œํ•˜๋ ค๋ฉด %o๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

String str = String.format("8์ง„์ˆ˜๋กœ ํ‘œ์‹œํ•˜๋ฉด %o", 10);
System.out.println(str);

์ถœ๋ ฅ:

8์ง„์ˆ˜๋กœ ํ‘œ์‹œํ•˜๋ฉด 12

16์ง„์ˆ˜๋กœ ํ‘œ์‹œ

16์ง„์ˆ˜๋กœ ํ‘œ์‹œํ•˜๋ ค๋ฉด %x๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

String str = String.format("16์ง„์ˆ˜๋กœ ํ‘œ์‹œํ•˜๋ฉด %x", 10);
System.out.println(str);

์ถœ๋ ฅ:

16์ง„์ˆ˜๋กœ ํ‘œ์‹œํ•˜๋ฉด a

์ˆซ์ž ์•ž์— ์ฑ„์šฐ๊ธฐ

  • 0์œผ๋กœ ์ฑ„์šฐ๋ ค๋ฉด %05d๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
String str = String.format("%05d", 1);
System.out.println(str);

์ถœ๋ ฅ:

00001
  • ์•ž ๋ถ€๋ถ„์„ ๊ณต๋ฐฑ์œผ๋กœ ์ฑ„์šฐ๋ ค๋ฉด %5d๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
String str = String.format("%5d", 10);
System.out.println(str);

์ถœ๋ ฅ:

   10
  • ๋’ท ๋ถ€๋ถ„์„ ๊ณต๋ฐฑ์œผ๋กœ ์ฑ„์šฐ๋ ค๋ฉด %-5d๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
String str = String.format("%-5d", 10);
System.out.println(str);

์ถœ๋ ฅ:

10   

์ฐธ๊ณ  ๋ธ”๋กœ๊ทธ: engineer-mole.tistory


Leave a comment