ํ์ํ ํด๋์ค
โถ ํ์ํ ํด๋์ค๋ java.text ํจํค์ง์ ํฌํจ๋์ด ์์
โถ ์ซ์, ๋ ์ง, ํ ์คํธ ๋ฐ์ดํฐ๋ฅผ ์ผ์ ํ ํ์์ ๋ง๊ฒ ํํํ ์ ์๋ ๋ฐฉ๋ฒ์ ๊ฐ์ฒด์งํฅ์ ์ผ๋ก ์ค๊ณํ์ฌ ํ์คํ
โถ ํ์ํ ์ฌ์ฉ๋ ํจํด์ ์ ์
- ๋ฐ์ดํฐ๋ฅผ ์ ์๋ ํจํด์ ๋ง์ถฐ ํ์ํํ ์ ์์ ๋ฟ๋ง ์๋๋ผ
์ญ์ผ๋ก ํ์ํ๋ ๋ฐ์ดํฐ์์ ์๋์ ๋ฐ์ดํฐ๋ฅผ ์ป์ด๋ผ ์๋ ์์
- ํจํด์ ์ ์ํ๋ ๊ฒ์ด ์ ๋ถ๋ผ๊ณ ํด๋ ๊ณผ์ธ์ด ์๋
DecimalFormat
DecimalFormat์ ์ซ์(10์ง์)๋ฅผ ํ์ํํ ๋ ์ฌ์ฉํ๋ค. ( ์ซ์ → ํ์ ๋ฌธ์์ด )
์ ์ฝ๋๋ doubleํ์ number์ ์ง์ ํ์์ผ๋ก ํ์ํํ๋ ์ฝ๋์ด๋ค.
๋ํ ์ ์ฝ๋์ ๊ฐ์ด ํน์ ํ์์ ๋ฌธ์์ด์ ์ซ์๋ก ๋ณํํ ๋๋ ์ฌ์ฉํ๋ค. (ํ์ ๋ฌธ์์ด → ์ซ์)
์๋๋ ๋ฌธ์์ด์ ์ซ์๋ก ๋ณํํ ๋๋ Integer.parseInt()๋ฅผ ์ฌ์ฉํ๋ค.
ํ์ง๋ง Integer.parseInt()๋ ์ฝค๋ง(,)๊ฐ ํฌํจ๋ ๋ฌธ์์ด์ ์ซ์๋ก ๋ณํํ์ง ๋ชปํ๋ค.
๋ฌผ๋ก ๋ค๋ฅธ Float.parseFloat(), Double.parseDouble()... ์ด๋ฌํ ๊ฒ๋ ์ฝค๋ง(,)๊ฐ ํฌํจ๋๋ฉด ๋ณํํ์ง ๋ชปํ๋ค.
๊ทธ๋ ๊ธฐ์ ์ซ์์ ์ต๊ณ ์กฐ์์ธ Numberํด๋์ค๋ฅผ ํตํด parse()๋ก ์ซ์๋ก ๋ณํ ๊ฐ์ ์ ์ฅํ๊ณ ,
Numberํด๋์ค์ ๊ธฐ๋ณธํ ๋ณํ ๋ฉ์๋์ธ doubleValue(), intValue(), floatValue()๋ฅผ ํตํด ๋ณํํ๋ฉด ๋๋ค.
ํ์ํ ํด๋์ค DecimalFormat์ ์ฌ์ฉํ๋ ๋ฐฉ๋ฒ์ผ๋ก๋ ๋ค์๊ณผ ๊ฐ๋ค.
โ ์ํ๋ ์ถ๋ ฅํ์์ ํจํด์ ์์ฑํ์ฌ DecimalFormat์ธ์คํด์ค๋ฅผ ์์ฑ
โก ์ถ๋ ฅํ๊ณ ์ํ๋ ๋ฌธ์์ด๋ก format๋ฉ์๋๋ฅผ ํธ์ถ
โข ์ํ๋ ํจํด์ ๋ง๊ฒ ๋ณํ๋ ๋ฌธ์์ด์ ์ป์
DecimalFormat์๋ ๋ค์ํ ๊ธฐํธ๊ฐ ์๋ค.
์๋์ ๋ค์ํ ๊ธฐํธ๋ฅผ ์ฐธ๊ณ ํ๊ณ ํ์ํ ๋ ์ฌ์ฉํ๋๋ก ํ์.
๊ธฐํธ | ์๋ฏธ | ํจํด | ๊ฒฐ๊ณผ (1234567.89) |
0 | 10์ง์(๊ฐ์ด ์์ ๋๋ 0) | 0 0.0 0000000000.0000 |
12345678 1234567.9 0001234567.8900 |
# | 10์ง์ | # #.# #########.#### |
12345678 1234567.9 1234567.89 |
. | ์์์ | #.# | 1234567.9 |
- | ์์๋ถํธ | #.#- -#.# |
1234567.9- -1234567.9 |
, | ๋จ์๊ตฌ๋ถ์ | #,###.## #,####.## |
1,234,567.89 123,4567.89 |
E | ์ง์๊ธฐํธ | #E0 0E0 ##E0 00E0 ####E0 0000E0 #.#E0 0.0E0 0.000000000E0 00.00000000E0 000.0000000E0 #.########E0 ##.#######E0 ###.######E0 |
.1E7 1E6 1.2E6 12E5 123.5E4 1235E3 1.2E6 1.2E6 1.234567890E6 12.34567890E5 123.4567890E4 1.23456789E6 1.23456789E6 1.23456789E6 |
; | ํจํด๊ตฌ๋ถ์ | #,###,##+;#,###,##- | 1,234,567.89+(์์์ผ ๋) 1,234,567.89-(์์์ผ ๋) |
\% | ํผ์ผํธ | #.#\% | 123456789% |
\u2030 | ํผ๋ฐ(ํผ์ผํธ * 10) | #.#\u2030 | 1234567890‰ |
\u00A4 | ํตํ | \u00A4 #,### | \ 1,234,568 |
' | escape ๋ฌธ์ | ’#’#,### ’’#,### |
#1,234,568 ‘1,234,568 |
์ซ์๋ฅผ ํ์ ๋ฌธ์์ด๋ก ๋ณํํ ๋๋ format()์ ์ฌ์ฉํ๊ณ ,
ํ์ ๋ฌธ์์ด์ ์ซ์๋ก ๋ณํํ ๋๋ parse()๋ฅผ ์ฌ์ฉํ๋ค๋ ์ ์ ๊ธฐ์ตํ์.
SimpleDateFormat
SimpleDateFormat์ ๋ ์ง์ ์๊ฐ์ ๋ค์ํ ํ์์ผ๋ก ์ถ๋ ฅํ ์ ์๊ฒ ํด ์ค๋ค.
์ ์ฝ๋์ ๊ฐ์ด Dateํ์ ์ today ๊ฐ์ฒด๋ฅผ ์์ฑํ๊ณ ,
SimpleDateFormat์ ํตํด ๋ฌธ์์ด๋ก ๋ณํํ ๊ธฐํธ๋ค์ ํฌํจํ ๊ฐ์ฒด๋ฅผ ์์ฑํ๋ค.
๊ทธ๋ฆฌ๊ณ format()์ ํ๊ฒ ๋๋ฉด ์ ์ฝ๋ ๊ฐ์ ๊ฒฝ์ฐ์๋ ์ค๋ ๋ ์ง์ ๋ , ์, ์ผ์ ๋ฌธ์์ด ํํ๋ก ๋ฐํํ๊ฒ ๋๋ค.
์ฌ๊ธฐ์ ์์ ์๋ฌธ์ m์ด ์๋๋ผ ๋๋ฌธ์ M์ ์ฌ์ฉํด์ผ ํ๋ค. (์๋ฌธ์ m์ ๋ถ์ ์๋ฏธํ๋ค)
๋ํ DecimalFormat๊ณผ ๋ง์ฐฌ๊ฐ์ง๋ก ํน์ ํ์์ ๋ฌธ์์ด์์ ๋ ์ง์ ์๊ฐ์ ๋ฝ์๋ผ ์๋ ์๋ค.
์ ์ฝ๋๋ yyyy๋ MM์ dd์ผ์ yyyy/MM/dd ํํ๋ก ๋ฐ๊ฟ ๋์ ์ฝ๋์ด๋ค.
parse()๋ฅผ ํตํด์ ๋ฌธ์์ด์ ๋ ์ง๋ก ๋ณํํ๊ณ , format์ ํตํด์ ๋ฌธ์์ด์ ๋ ์ง๋ก ๋ณํํ ๊ฒ์ด๋ค.
์ด๋ ๊ฒ DecimalFormat๊ณผ SimpleDateFormat์ ์ฌ์ฉ๋ฐฉ๋ฒ์ ์๋นํ ์ ์ฌํ๋ค.
๊ทธ๋ฅ ์ซ์๋ ๋ ์ง๋ฅผ ํ์ ๋ฌธ์์ด๋ก ๋ณํํ ๋๋ Format(),
ํ์ ๋ฌธ์์ด์ ์ซ์๋ ๋ ์ง๋ก ๋ณํํ ๋๋ parse()๋ฅผ ์ฌ์ฉํ๋ฉด ๋๋ค.
๊ฑฐ๊ธฐ์ ์ฌ์ฉ๋๋ ๊ธฐํธ๋ค์ ์ธ์ฐ๊ธฐ๋ณด๋ค๋ ํ์ํ ๋ ์ฐพ์์ ์ฌ์ฉํ๋๋ก ํ์.
'๐จ๏ธ Language > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Java]์ปฌ๋ ์ ํ๋ ์์ (2) - ArrayList, LinkedList (1) | 2022.11.28 |
---|---|
[Java]์ปฌ๋ ์ ํ๋ ์์ (collections framework) (0) | 2022.11.28 |
[Java]Calendarํด๋์ค (0) | 2022.11.25 |
[Java]StringBuilder, Mathํด๋์ค, ๋ํผํด๋์ค, Nuberํด๋์ค, ๋ฌธ์์ด์ ์ซ์๋ก ๋ณํ, ์คํ ๋ฐ์ฑ&์ธ๋ฐ์ฑ (1) | 2022.11.22 |
[Java]StringBuffer ํด๋์ค, StringBuffer ๋ฉ์๋ (1) | 2022.11.19 |