OOP(Object-Oriented Programming)์˜ 4๋Œ€ ์›์น™๊ณผ SOLID 5๋Œ€ ์›์น™ ์ •๋ฆฌ
ยท
๐Ÿ—จ๏ธ Language/Java
OOP์˜ 4๋Œ€ ์›์น™ 1. ์บก์Аํ™” (Encapsulation)๋ฐ์ดํ„ฐ ๋ณดํ˜ธ๋ฅผ ์œ„ํ•ด ํด๋ž˜์Šค์˜ ์†์„ฑ์„ private์œผ๋กœ ์„ค์ •ํ•˜๊ณ , getter์™€ setter ๋ฉ”์„œ๋“œ๋ฅผ ํ†ตํ•ด ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•˜๋„๋ก ํ•œ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ฐ์ฒด์˜ ๋‚ด๋ถ€ ์ƒํƒœ๋ฅผ ์™ธ๋ถ€์—์„œ ์ง์ ‘ ๋ณ€๊ฒฝํ•˜์ง€ ๋ชปํ•˜๊ฒŒ ํ•˜์—ฌ ๋ฐ์ดํ„ฐ ๋ฌด๊ฒฐ์„ฑ์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค.2. ์ถ”์ƒํ™” (Abstraction)์ถ”์ƒํ™”๋Š” ๋ณต์žกํ•œ ์‹œ์Šคํ…œ์˜ ์„ธ๋ถ€ ์‚ฌํ•ญ์„ ์ˆจ๊ธฐ๊ณ , ํ•„์š”ํ•œ ๋ถ€๋ถ„๋งŒ์„ ๋“œ๋Ÿฌ๋‚ด๋Š” ๊ฐœ๋…์ด๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ฝ”๋“œ ์žฌ์‚ฌ์šฉ์„ฑ์„ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค. abstract class์™€ interface๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๊ณตํ†ต์ ์ธ ๊ธฐ๋Šฅ์„ ์ •์˜ํ•˜๊ณ , ์ด๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋‹ค์–‘ํ•œ ํด๋ž˜์Šค์—์„œ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.3. ๋‹คํ˜•์„ฑ (Polymorphism)๋‹คํ˜•์„ฑ์€ ๊ฐ™์€ ์ธํ„ฐํŽ˜์ด์Šค๋‚˜ ๋ถ€๋ชจ ํด๋ž˜์Šค์˜ ๋ฉ”์„œ๋“œ๋ฅผ ๋‹ค์–‘ํ•œ ๋ฐฉ์‹์œผ๋กœ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ..
H2 Database๋ž€? ๋น ๋ฅด๊ณ  ๊ฐ€๋ฒผ์šด ํ…Œ์ŠคํŠธ DB์˜ ๋ชจ๋“  ๊ฒƒ
ยท
๐Ÿ—จ๏ธ Language/Java
๐Ÿ“Œ H2 Database๋ž€?H2 Database๋Š” Java ๊ธฐ๋ฐ˜์˜ ๊ฒฝ๋Ÿ‰ ์ธ๋ฉ”๋ชจ๋ฆฌ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ, ๋น ๋ฅธ ์†๋„์™€ ์‰ฌ์šด ์„ค์ •์ด ์žฅ์ ์ธ RDBMS(Relational Database Management System)์ด๋‹ค. Spring Boot ๋ฐ ๋‹ค์–‘ํ•œ Java ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ํ…Œ์ŠคํŠธ์šฉ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ๋งŽ์ด ํ™œ์šฉ๋œ๋‹ค.๐Ÿ”น H2 Database์˜ ํŠน์ง•โœ… ๊ฒฝ๋Ÿ‰ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค: ํŒŒ์ผ ๊ธฐ๋ฐ˜ ๋˜๋Š” ์ธ๋ฉ”๋ชจ๋ฆฌ ๋ชจ๋“œ๋กœ ๋™์ž‘ํ•˜๋ฉฐ, ์„ค์น˜๊ฐ€ ๊ฐ„๋‹จํ•˜๊ณ  ๊ฐ€๋ณ๋‹ค.โœ… ๋น ๋ฅธ ์†๋„: ์ธ๋ฉ”๋ชจ๋ฆฌ ๋ชจ๋“œ์—์„œ๋Š” ๋†’์€ ์„ฑ๋Šฅ์„ ์ œ๊ณตํ•˜์—ฌ ํ…Œ์ŠคํŠธ ๋ฐ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ํšจ๊ณผ์ ์ด๋‹ค.โœ… ANSI SQL ์ง€์›: ํ‘œ์ค€ SQL์„ ์ง€์›ํ•˜์—ฌ MySQL, PostgreSQL ๋“ฑ๊ณผ ์œ ์‚ฌํ•œ ์ฟผ๋ฆฌ ์ž‘์„ฑ์ด ๊ฐ€๋Šฅํ•˜๋‹ค.โœ… Java ๊ธฐ๋ฐ˜: Pure Java๋กœ ์ž‘์„ฑ๋˜์–ด ์žˆ์–ด ํ”Œ๋žซํผ ๋…๋ฆฝ์ ์ด๋‹ค..
Spring WebSocket๊ณผ STOMP, ๊ทธ๋ฆฌ๊ณ  Kafka๋ฅผ ํ™œ์šฉํ•œ ์‹ค์‹œ๊ฐ„ ํ†ต์‹ 
ยท
๐Ÿ—จ๏ธ Language/Java
1. ์›น์†Œ์ผ“(WebSocket)์ด๋ž€?1.1 ์›น์˜ ๊ธฐ๋ณธ ํ†ต์‹  ๋ฐฉ์‹: HTTP์˜ ํ•œ๊ณ„์›น ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ ์„œ๋ฒ„์™€ ํด๋ผ์ด์–ธํŠธ ๊ฐ„์˜ ๋ฐ์ดํ„ฐ ๊ตํ™˜์€ ์ผ๋ฐ˜์ ์œผ๋กœ HTTP๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ํ•˜์ง€๋งŒ HTTP๋Š” ๋น„์—ฐ๊ฒฐ์„ฑ(stateless) ํ”„๋กœํ† ์ฝœ๋กœ, ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์š”์ฒญ์„ ๋ณด๋‚ด์•ผ๋งŒ ์„œ๋ฒ„๊ฐ€ ์‘๋‹ตํ•˜๋Š” ๋‹จ๋ฐฉํ–ฅ ํ†ต์‹  ๋ฐฉ์‹์ด๋‹ค.์ด ๋ฐฉ์‹์€ ์‹ค์‹œ๊ฐ„์„ฑ์ด ์ค‘์š”ํ•œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜(์˜ˆ: ์ฑ„ํŒ…, ์ฃผ์‹ ๊ฑฐ๋ž˜, ์•Œ๋ฆผ ์„œ๋น„์Šค ๋“ฑ)์—์„œ๋Š” ๋น„ํšจ์œจ์ ์ด๋‹ค. ์ฃผ๊ธฐ์ ์œผ๋กœ ์„œ๋ฒ„์— ์š”์ฒญ์„ ๋ณด๋‚ด๋Š” ํด๋ง(Polling), ๋กฑ ํด๋ง(Long Polling), ์„œ๋ฒ„ ์„ผํŠธ ์ด๋ฒคํŠธ(Server-Sent Events, SSE) ๊ฐ™์€ ๊ธฐ์ˆ ์ด ์‚ฌ์šฉ๋˜์ง€๋งŒ, ์„ฑ๋Šฅ๊ณผ ํ™•์žฅ์„ฑ์—์„œ ํ•œ๊ณ„๊ฐ€ ์žˆ๋‹ค.1.2 ์›น์†Œ์ผ“(WebSocket)์˜ ๋“ฑ์žฅ์›น์†Œ์ผ“์€ ํด๋ผ์ด์–ธํŠธ์™€ ์„œ๋ฒ„ ๊ฐ„์— ์ง€์†์ ์ธ ์—ฐ๊ฒฐ์„ ์œ ์ง€ํ•˜๋ฉฐ ์–‘๋ฐฉํ–ฅ ..
[Java] ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์› (6) - HashMap, Collectionsํด๋ž˜์Šค
ยท
๐Ÿ—จ๏ธ Language/Java
HashMap HashMap์€ Map์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•œ ํด๋ž˜์Šค์ด๋‹ค. Map์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ–ˆ๊ธฐ์— ์ˆœ์„œ๋Š” ์—†๊ณ , ์ค‘๋ณต์€ ํ‚ค๋Š” ํ—ˆ์šฉํ•˜์ง€ ์•Š์ง€๋งŒ ๊ฐ’์€ ํ—ˆ์šฉํ•œ๋‹ค. → ํ‚ค X, ๊ฐ’ O ๋ฐ์ดํ„ฐ๋ฅผ ํ‚ค์™€ ๊ฐ’์˜ ์Œ์œผ๋กœ ์ €์žฅ์„ ํ•˜๋Š” ๊ฒƒ์ด ํŠน์ง•์ด๋‹ค. Hashtable์€ ์˜›๋‚  ๋ฒ„์ „์ด๊ณ , HashMap์€ ์‹ ๋ฒ„์ „์ด๋‹ค. ๋‘ ์ฐจ์ด์ ์€ Hashtable์€ ๋™๊ธฐํ™”๊ฐ€ ๋˜์–ด์žˆ๊ณ , HashMap์€ ๋™๊ธฐํ™”๊ฐ€ ๋˜์–ด์žˆ์ง€ ์•Š์€ ๊ฒƒ์ด ์ฐจ์ด์ด๋‹ค. TreeMap์€ TreeSet๊ณผ ๊ฐ™์€ ํŠน์ง•์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. TreeSet์— ๋Œ€ํ•ด์„œ๋Š” ๋‹ค์Œ ๋”๋ณด๊ธฐ๋ฅผ ํ™•์ธํ•˜๋ฉด ๋œ๋‹ค. ๋”๋ณด๊ธฐ [Java] ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์› (5) - HashSet, TreeSet HashSet HashSet๊ณผ TreeSet์€ ์ด๋ฆ„ ๊ทธ๋Œ€๋กœ Set์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜์˜€๊ธฐ ๋•Œ๋ฌธ์— ์ˆœ์„œ๊ฐ€ ์—†๊ณ  ์ค‘๋ณต์„ ํ—ˆ์šฉ..
[Java] ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์› (5) - HashSet, TreeSet
ยท
๐Ÿ—จ๏ธ Language/Java
HashSet HashSet๊ณผ TreeSet์€ ์ด๋ฆ„ ๊ทธ๋Œ€๋กœ Set์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜์˜€๊ธฐ ๋•Œ๋ฌธ์— ์ˆœ์„œ๊ฐ€ ์—†๊ณ  ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ๋Š” HashSet์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€์žฅ ์ผ๋ฐ˜์ ์ด๋‹ค. ๋˜ํ•œ, ์ˆœ์„œ๋ฅผ ์œ ์ง€ํ•˜๋ ค๋ฉด LinkedHashSetํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค. TreeSet์€ ๋ฒ”์œ„ ๊ฒ€์ƒ‰๊ณผ ์ •๋ ฌ์— ์œ ๋ฆฌํ•œ ์ปฌ๋ ‰์…˜ ํด๋ž˜์Šค์ด๋‹ค. ๊ทธ๋ ‡๊ธฐ์— HashSet๋ณด๋‹ค ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€๋‚˜ ์‚ญ์ œ์— ์‹œ๊ฐ„์ด ๋” ์†Œ์š”๋œ๋‹ค. HashSet์˜ ์ฃผ์š” ๋ฉ”์„œ๋“œ ์ƒ์„ฑ์ž int initialCapacity๋Š” HashSet์˜ ์ดˆ๊ธฐ ์šฉ๋Ÿ‰์„ ์ง€์ •ํ•ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค. float loadFactor์€ ์–ธ์ œ HashSet์˜ ์šฉ๋Ÿ‰์„ ๋‘๋ฐฐ ์ฆ๊ฐ€ํ• ์ง€ ์ง€์ •ํ•ด์ฃผ๋Š” ๊ฒƒ์ด๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด loadFactor์— 0.8์„ ์ž…๋ ฅํ•˜๋ฉด HashSet์˜ ์šฉ๋Ÿ‰์ด 80ํ”„๋กœ ์ฐจ๋ฉด ์šฉ๋Ÿ‰์ด ๋‘..
[Java]์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์› (4) - ์ปฌ๋ ‰์…˜ ์ ‘๊ทผ ์ธํ„ฐํŽ˜์ด์Šค, Arrays, Comparator์™€ Comparable
ยท
๐Ÿ—จ๏ธ Language/Java
Iterator, ListIterator, Enumeration โ–ถ ์ปฌ๋ ‰์…˜์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์ ‘๊ทผํ•˜๋Š”๋ฐ ์‚ฌ์šฉ๋˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค โ–ถ Enumeration์€ Iterator์˜ ๊ตฌ๋ฒ„์ „ โ–ถ ListIterator๋Š” Iterator์˜ ์ ‘๊ทผ์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚จ ๊ฒƒ (๋‹จ๋ฐฉํ–ฅ → ์–‘๋ฐฉํ–ฅ) - ListIterator๊ณผ Enumeration์€ ์ž˜ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค. ( ListIterator์€ List์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•œ ์ปฌ๋ ‰์…˜์—์„œ๋งŒ ์‚ฌ์šฉ ๊ฐ€๋Šฅ ) Iterator์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ์ปฌ๋ ‰์…˜์— ์ €์žฅ๋œ ์š”์†Œ๋“ค์„ ์ฝ์–ด์˜ค๋Š” ๋ฐฉ๋ฒ•์„ ํ‘œ์ค€ํ™”ํ•˜์˜€๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. List๋‚˜ Map์ด๋‚˜ Set์€ ํ™•์ธํ•˜๊ณ  ์ฝ์–ด์˜ค๋Š” ๋ฐฉ๋ฒ•์ด ์ œ๊ฐ๊ฐ์ด๋‹ค. ๊ทธ๋Ÿฌํ•œ๊ฒƒ์„ Iterator์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ํ†ตํ•˜์—ฌ ์ฝ์–ด์˜ค๊ณ  ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ํ•˜๋‚˜๋กœ ํ†ต์ผํ•œ ๊ฒƒ์ด๋‹ค. ์œ„ ์ฝ”๋“œ์ฒ˜๋Ÿผ Iterator() ..
[Java]์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์› (3) - Stack & Queue
ยท
๐Ÿ—จ๏ธ Language/Java
์Šคํƒ๊ณผ ํ (Stack & Queue) โ–ถ ์Šคํƒ(Stack) : LIFO๊ตฌ์กฐ. ๋งˆ์ง€๋ง‰์— ์ €์žฅ๋œ ๊ฒƒ์„ ์ œ์ผ ๋จผ์ € ๊บผ๋‚ด๊ฒŒ ๋œ๋‹ค. ์Šคํƒ์€ ๋ฐ‘์ด ๋ง‰ํžŒ ์ƒ์ž์ด๋‹ค. ์ƒ์ž์— 0, 1, 2๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ๋„ฃ๊ฒŒ ๋˜๋ฉด ๊บผ๋‚ผ ๋•Œ๋Š” ๋งˆ์ง€๋ง‰์— ๋„ฃ์—ˆ๋˜ 2, 1, 0 ์ˆœ์„œ๋กœ ๊บผ๋‚ด๊ฒŒ ๋œ๋‹ค. ์ด๋Ÿฌํ•œ ๊ตฌ์กฐ๋ฅผ LIFO(Last In First Out)๊ตฌ์กฐ๋ผ๊ณ  ํ•œ๋‹ค. ์Šคํƒ์˜ ํŠน์ง•์€ ์ €์žฅํ•œ ์ˆœ์„œ์™€ ์ถ”์ถœํ•˜๋Š” ์ˆœ์„œ๊ฐ€ ๋ฐ˜๋Œ€์ธ๊ฒƒ์ด ํŠน์ง•์ด๋‹ค. ์Šคํƒ์—์„œ๋Š” ์ €์žฅ์„ push, ์ถ”์ถœ์€ pop ์ด๋ผ๊ณ  ํ•œ๋‹ค. โ–ถ ํ(Queue) : FIFO๊ตฌ์กฐ. ์ œ์ผ ๋จผ์ € ์ €์žฅํ•œ ๊ฒƒ์„ ์ œ์ผ ๋จผ์ € ๊บผ๋‚ด๊ฒŒ ๋œ๋‹ค. ํ๋Š” ์–‘๋์ด ๋œท๋ฆฐ ์ƒ์ž์ด๋‹ค. ์ƒ์ž์— 0, 1, 2๋ฅผ ์ˆœ์„œ๋Œ€๋กœ ๋„ฃ๊ณ , ๊บผ๋‚ผ ๋•Œ๋„ 0, 1, 2 ์ˆœ์„œ๋Œ€๋กœ ๊บผ๋‚ด๊ฒŒ ๋œ๋‹ค. ์ด๋Ÿฌํ•œ ๊ตฌ์กฐ๋ฅผ FIFO(First In First Out..
[Java]์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์› (2) - ArrayList, LinkedList
ยท
๐Ÿ—จ๏ธ Language/Java
ArrayList ArrayList๋Š” ๊ธฐ์กด์˜ Vector๋ฅผ ๊ฐœ์„ ํ•œ ๊ฒƒ์œผ๋กœ ๊ตฌํ˜„์›๋ฆฌ์™€ ๊ธฐ๋Šฅ์ ์œผ๋กœ ๋™์ผํ•˜๋‹ค. ArrayList์™€ ๋‹ฌ๋ฆฌ Vector๋Š” ์ž์ฒด์ ์œผ๋กœ ๋™๊ธฐํ™” ์ฒ˜๋ฆฌ๊ฐ€ ๋˜์–ด ์žˆ๋‹ค. List์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๋ฏ€๋กœ, ์ €์žฅ์ˆœ์„œ๊ฐ€ ์œ ์ง€๋˜๊ณ  ์ค‘๋ณต์„ ํ—ˆ์šฉํ•œ๋‹ค. ๋ฐ์ดํ„ฐ์˜ ์ €์žฅ๊ณต๊ฐ„์œผ๋กœ ๋ฐฐ์—ด์„ ์‚ฌ์šฉํ•œ๋‹ค. (๋ฐฐ์—ด ๊ธฐ๋ฐ˜) Vectorํด๋ž˜์Šค์˜ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด ๊ฐ์ฒด๋ฅผ ๋‹ด๊ธฐ ์œ„ํ•œ ๋ฐฐ์—ด ํƒ€์ž…์œผ๋กœ Object[]๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. ์ฆ‰, ์ตœ๊ณ  ์กฐ์ƒ์ธ Objectํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•ด ๋ชจ๋“  ์ข…๋ฅ˜์˜ ๊ฐ์ฒด๋ฅผ ์ €์žฅ ํ•  ์ˆ˜ ์žˆ๋‹ค. (๋‹คํ˜•์„ฑ) ArrayList์˜ ๋ฉ”์„œ๋“œ ์ƒ์„ฑ์ž ArrayList() ๊ธฐ๋ณธ ์ƒ์„ฑ์ž ArrayList(Collection c) ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ Collection์„ ์ฃผ๋ฉด ํ•ด๋‹น Collection์„ ์ €์žฅํ•˜๋Š” ArrayList๋ฅผ ์ƒ์„ฑํ•œ๋‹ค...
[Java]์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์› (collections framework)
ยท
๐Ÿ—จ๏ธ Language/Java
์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์› (collections framework) โ–ถ ์ปฌ๋ ‰์…˜(collection) - ์—ฌ๋Ÿฌ ๊ฐ์ฒด(๋ฐ์ดํ„ฐ)๋ฅผ ๋ชจ์•„ ๋†“์€ ๊ฒƒ์„ ์˜๋ฏธ โ–ถ ํ”„๋ ˆ์ž„์›(framework) - ํ‘œ์ค€ํ™”, ์ •ํ˜•ํ™”๋œ ์ฒด๊ณ„์ ์ธ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹ โ–ถ ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›(collections framework) - ์ปฌ๋ ‰์…˜(๋‹ค์ˆ˜์˜ ๊ฐ์ฒด)์„ ๋‹ค๋ฃจ๊ธฐ ์œ„ํ•œ ํ‘œ์ค€ํ™”๋œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹ - ์ปฌ๋ ‰์…˜์„ ์‰ฝ๊ณ  ํŽธ๋ฆฌํ•˜๊ฒŒ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๋Š” ๋‹ค์–‘ํ•œ ํด๋ž˜์Šค๋ฅผ ์ œ๊ณต - java.utilํŒจํ‚ค์ง€์— ํฌํ•จ. JDK1.2๋ถ€ํ„ฐ ์ œ๊ณต โ–ถ ์ปฌ๋ ‰์…˜ ํด๋ž˜์Šค(collection class) - ๋‹ค์ˆ˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋Š” ํด๋ž˜์Šค (Vevtor, ArrayList, Hashset) ์ปฌ๋ ‰์…˜ ํ”„๋ ˆ์ž„์›์˜ ํ•ต์‹ฌ ์ธํ„ฐํŽ˜์ด์Šค ๋‹ค๋ฃฐ๋ ค๊ณ  ํ•˜๋Š” ๋ฐ์ดํ„ฐ์˜ ์†์„ฑ์„ ์‚ดํŽด๋ณด๋ฉด ํฌ๊ฒŒ 3๊ฐ€์ง€๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค. ๊ทธ..
[Java]ํ˜•์‹ํ™” ํด๋ž˜์Šค
ยท
๐Ÿ—จ๏ธ Language/Java
ํ˜•์‹ํ™” ํด๋ž˜์Šค โ–ถ ํ˜•์‹ํ™” ํด๋ž˜์Šค๋Š” java.text ํŒจํ‚ค์ง€์— ํฌํ•จ๋˜์–ด ์žˆ์Œ โ–ถ ์ˆซ์ž, ๋‚ ์งœ, ํ…์ŠคํŠธ ๋ฐ์ดํ„ฐ๋ฅผ ์ผ์ •ํ•œ ํ˜•์‹์— ๋งž๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์„ ๊ฐ์ฒด์ง€ํ–ฅ์ ์œผ๋กœ ์„ค๊ณ„ํ•˜์—ฌ ํ‘œ์ค€ํ™” โ–ถ ํ˜•์‹ํ™” ์‚ฌ์šฉ๋  ํŒจํ„ด์„ ์ •์˜ - ๋ฐ์ดํ„ฐ๋ฅผ ์ •์˜๋œ ํŒจํ„ด์— ๋งž์ถฐ ํ˜•์‹ํ™”ํ•  ์ˆ˜ ์žˆ์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์—ญ์œผ๋กœ ํ˜•์‹ํ™”๋œ ๋ฐ์ดํ„ฐ์—์„œ ์›๋ž˜์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์–ป์–ด๋‚ผ ์ˆ˜๋„ ์žˆ์Œ - ํŒจํ„ด์„ ์ •์˜ํ•˜๋Š” ๊ฒƒ์ด ์ „๋ถ€๋ผ๊ณ  ํ•ด๋„ ๊ณผ์–ธ์ด ์•„๋‹˜ DecimalFormat DecimalFormat์€ ์ˆซ์ž(10์ง„์ˆ˜)๋ฅผ ํ˜•์‹ํ™”ํ•  ๋•Œ ์‚ฌ์šฉํ•œ๋‹ค. ( ์ˆซ์ž → ํ˜•์‹ ๋ฌธ์ž์—ด ) ์œ„ ์ฝ”๋“œ๋Š” doubleํ˜•์˜ number์„ ์ง€์ˆ˜ ํ˜•์‹์œผ๋กœ ํ˜•์‹ํ™”ํ•˜๋Š” ์ฝ”๋“œ์ด๋‹ค. ๋˜ํ•œ ์œ„ ์ฝ”๋“œ์™€ ๊ฐ™์ด ํŠน์ • ํ˜•์‹์˜ ๋ฌธ์ž์—ด์„ ์ˆซ์ž๋กœ ๋ณ€ํ™˜ํ•  ๋•Œ๋„ ์‚ฌ์šฉํ•œ๋‹ค. (ํ˜•์‹ ๋ฌธ์ž์—ด → ์ˆซ์ž) ์›๋ž˜๋Š” ๋ฌธ์ž์—ด์„ ์ˆซ์ž๋กœ ๋ณ€ํ™˜..
Kyle99
'๐Ÿ—จ๏ธ Language/Java' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก