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

๊ฐœ๋ฐœ66

WAS ๋™์ž‘๊ณผ์ • / ์„œ๋ธ”๋ฆฟ(Servlet) / Servlet ๊ตฌํ˜„ / ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ ๋ชฉ์ฐจ WAS ๋™์ž‘ ๊ณผ์ • ์„œ๋ธ”๋ฆฟ(Servlet) Servlet ๊ตฌํ˜„ ๋ฐฉ๋ฒ• ์„œ๋ธ”๋ฆฟ ์ƒ๋ช…์ฃผ๊ธฐ(Servlet LifeCycle) ์„œ๋ธ”๋ฆฟ ์ปจํ…Œ์ด๋„ˆ(Servlet Container) WAS ๋™์ž‘ ๊ณผ์ • ์›น ์„œ๋ฒ„๋กœ๋ถ€ํ„ฐ ์š”์ฒญ์ด ๋“ค์–ด์˜ค๋ฉด ์ปจํ…Œ์ด๋„ˆ๊ฐ€ web.xml์„ ์ฐธ์กฐํ•˜์—ฌ Servlet์— ๋Œ€ํ•œ Thread๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์š”์ฒญ(httpServletRequest) ๋ฐ ์‘๋‹ต(httpServletResponse) ๊ฐ์ฒด๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ์ „๋‹ฌํ•œ๋‹ค. ํ˜ธ์ถœ๋œ ์„œ๋ธ”๋ฆฟ์˜ ์ž‘์—…์„ ๋‹ด๋‹นํ•˜๊ฒŒ ๋œ ์Šค๋ ˆ๋“œ๋Š” ๊ทธ์— ๋งž๋Š” doGet() ๋˜๋Š” doPost() ๋ฉ”์†Œ๋“œ๋ฅผ ํ˜ธ์ถœํ•ด ์ƒ์„ฑ๋œ ๋™์  ํŽ˜์ด์ง€๋ฅผ Response ๊ฐ์ฒด์— ๋‹ด์•„ ์ปจํ…Œ์ด๋„ˆ์— ์ „๋‹ฌํ•œ๋‹ค. ์ปจํ…Œ์ด๋„ˆ๋Š” ์ „๋‹ฌ ๋ฐ›์€ Response ๊ฐ์ฒด๋ฅผ HttpResponse ํ˜•ํƒœ๋กœ ๋ฐ”๊พธ์–ด Web Server์— ์ „๋‹ฌํ•˜๊ณ  ์ƒ์„ฑ๋œ.. 2022. 1. 24.
Java ์šฐ์„ ์ˆœ์œ„ ํ(Priority Queue) ํ(Queue) ๋จผ์ € ๋„ฃ์€ ๋ฐ์ดํ„ฐ๊ฐ€ ๋จผ์ € ๋‚˜์˜ค๋Š” FIFO(First In First Out) ๊ตฌ์กฐ๋กœ ์ €์žฅํ•˜๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์˜ ํ•œ ํ˜•์‹์ด๋‹ค. ์šฐ์„ ์ˆœ์œ„ ํ(Priority Queue) ๋จผ์ € ๋“ค์–ด์˜จ ๊ฒƒ๋ถ€ํ„ฐ ๋จผ์ € ๋‚˜๊ฐ€๋Š” ์ผ๋ฐ˜์ ์ธ ํ(์„ ํ˜• ๋˜๋Š” ์›ํ˜•)์™€ ๋‹ค๋ฅด๊ฒŒ ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฒฐ์ •ํ•˜๊ณ  ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’์€ ์—˜๋ฆฌ๋จผํŠธ๊ฐ€ ๋จผ์ € ๋‚˜๊ฐ€๋Š” ์ž๋ฃŒ๊ตฌ์กฐ์ด๋‹ค. ๋†’์€ ์šฐ์„ ์ˆœ์œ„์˜ ์š”์†Œ๊ฐ€ ๋จผ์ € ๋‚˜์™€์•ผ ํ•˜๋ฏ€๋กœ ํ์— ๋“ค์–ด๊ฐ€๋Š” ์š”์†Œ๋Š” ๋น„๊ต ๊ฐ€๋Šฅํ•œ ๊ธฐ์ค€์ด ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๋ฐฐ์—ด์ด๋‚˜ ์—ฐ๊ฒฐ๋ฆฌ์ŠคํŠธ๊ฐ€ ์•„๋‹Œ ํž™(heap)์ด๋ผ๋Š” ์ž๋ฃŒ๊ตฌ์กฐ๋กœ ๊ตฌํ˜„ํ•œ๋‹ค. ๋‚ด๋ถ€ ๊ตฌ์กฐ๋Š” ์ด์ง„ํŠธ๋ฆฌ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ๋‹ค. ํž™ ์ž๋ฃŒ๊ตฌ์กฐ๋Š” ๋ถ€๋ชจ ๋…ธ๋“œ๋Š” ์ž์‹ ๋…ธ๋“œ๋ณด๋‹ค ํ•ญ์ƒ ์šฐ์„ ์ˆœ์œ„๊ฐ€ ์•ž์„ ๋‹ค๋Š” ์กฐ๊ฑด์„ ๋งŒ์กฑ์‹œํ‚ค๋ฉฐ ์™„์ „ ์ด์ง„ํŠธ๋ฆฌ๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด๋‹ค. ๐Ÿง ํž™(heap) ์ž๋ฃŒ๊ตฌ์กฐ ์šฐ์„ ์ˆœ์œ„ ํ๋Š” ํž™ ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ตฌํ˜„๋œ.. 2022. 1. 17.
ํ”„๋ฆฐํ„ฐ (Java) https://programmers.co.kr/learn/courses/30/lessons/42587 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ํ”„๋ฆฐํ„ฐ ์ผ๋ฐ˜์ ์ธ ํ”„๋ฆฐํ„ฐ๋Š” ์ธ์‡„ ์š”์ฒญ์ด ๋“ค์–ด์˜จ ์ˆœ์„œ๋Œ€๋กœ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์ค‘์š”ํ•œ ๋ฌธ์„œ๊ฐ€ ๋‚˜์ค‘์— ์ธ์‡„๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ๋ฌธ์ œ๋ฅผ ๋ณด์™„ํ•˜๊ธฐ ์œ„ํ•ด ์ค‘์š”๋„๊ฐ€ ๋†’์€ ๋ฌธ์„œ๋ฅผ ๋จผ์ € ์ธ์‡„ํ•˜๋Š” ํ”„๋ฆฐ programmers.co.kr ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๊ณ ๋“์  Kit ํ”„๋ฆฐํ„ฐ ๋ฌธ์ œ ํ’€์ด์ด๋‹ค. ๊ฐ„๋‹จํ•˜๊ฒŒ ๋ฆฌ์ŠคํŠธ๋งŒ ์ด์šฉํ•˜์—ฌ location์˜ ์ธ๋ฑ์Šค๋ฅผ ๋ฐ”๊พธ์–ด์ค„ ์ƒ๊ฐ์œผ๋กœ ํ’€์–ด๋ดค๋Š”๋ฐ ์ด๋ฏธ ์ธ์‡„๋˜๋Š” ๊ฐ’๊นŒ์ง€ ์ €์žฅํ•˜๊ณ  ๊ณ„์‚ฐํ•˜๋Š” ๋ฐฉ๋ฒ•์ด ์–ด๋ ค์› ๊ณ  ์ค‘์š”๋„ ๋ฐฐ์—ด๋งŒํผ ๋ฐ˜๋ณตํ•˜๋ฉด ์•ˆ ๋˜๋Š” ๊ฒƒ์„ ๊นจ๋‹ซ๊ณ  ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์„ ์ƒ๊ฐํ•ด๋ดค๋‹ค. ์†์œผ๋กœ ์ง์ ‘ ๊ฐ’ ๋ณ€๊ฒฝ ๋‹จ๊ณ„๋ฅผ ์ ์–ด๋ณด๋‹ค๊ฐ€ ์ดˆ๊ธฐ ๋ฐฐ์—ด ์ˆœ์„œ์™€ ์ตœ์ข… ๋ฐฐ์—ด ์ˆœ์„œ๋ฅผ ๋น„๊ตํ•ด์„œ ํ’€ ์ˆ˜ ์žˆ๊ฒ ๋‹ค.. 2022. 1. 16.
[JAVA 8] ์ŠคํŠธ๋ฆผ(Stream) Stream java 8 ์ด์ „์—๋Š” ๋ฐฐ์—ด ๋˜๋Š” ์ปฌ๋ ‰์…˜์„ ์ˆœํšŒํ•˜๊ธฐ ์œ„ํ•ด for ๋˜๋Š” foreach๋ฌธ์„ ๋Œ๋ฉฐ ์š”์†Œ ํ•˜๋‚˜์”ฉ ๊บผ๋‚ด์„œ ๋‹ค๋ฃจ์–ด์•ผ ํ–ˆ๋‹ค. stream์„ ํ™œ์šฉํ•˜๋ฉด ๋ฐฐ์—ด ๋˜๋Š” ์ปฌ๋ ‰์…˜์— ํ•จ์ˆ˜ ์—ฌ๋Ÿฌ ๊ฐœ๋ฅผ ์กฐํ•ฉํ•ด์„œ ํ•„ํ„ฐ๋งํ•˜๊ฑฐ๋‚˜ ๊ฐ€๊ณตํ•˜์—ฌ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋žŒ๋‹ค๋ฅผ ์ด์šฉํ•ด ์ฝ”๋“œ๋ฅผ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. ๋˜ํ•œ ๋‚ด๋ถ€ ๋ฐ˜๋ณต์ž๋ฅผ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ๊ฐ€ ์‰ฝ๋‹ค. Stream์€ ์›๋ณธ ๋ฐ์ดํ„ฐ ์ž์ฒด๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๋Š”๋‹ค. Stream์€ ์ผํšŒ์šฉ์œผ๋กœ ์žฌ์‚ฌ์šฉ์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค. Stream์€ ๋ฐ˜๋ณต๋ฌธ์„ ๋‚ด๋ถ€์— ์ˆจ๊ธฐ๋Š” ๋‚ด๋ถ€ ๋ฐ˜๋ณต์œผ๋กœ ์ฒ˜๋ฆฌํ•œ๋‹ค. Stream ๊ตฌ์กฐ ๊ฐ์ฒด.์ŠคํŠธ๋ฆผ์ƒ์„ฑ().๊ฐ€๊ณต().๊ฒฐ๊ณผ(); ์ค‘๊ฐœ ์—ฐ์‚ฐ์ด ์—ฐ์‚ฐ ๊ฒฐ๊ณผ๋ฅผ stream์œผ๋กœ ๋ฐ˜ํ™˜ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์—ฐ์†์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ์ƒ์„ฑ : ์ŠคํŠธ๋ฆผ ์ธ์Šคํ„ด์Šค ์ƒ์„ฑ ์ค‘๊ฐœ ์—ฐ์‚ฐ(๊ฐ€๊ณตํ•˜๊ธฐ).. 2022. 1. 15.
[JAVA 8] ํ•จ์ˆ˜ํ˜• ์ธํ„ฐํŽ˜์ด์Šค(Functional Interface) ํ•จ์ˆ˜ํ˜• ์ธํ„ฐํŽ˜์ด์Šค(Functional Interface) ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋””ํดํŠธ ๋ฉ”์„œ๋“œ์™€๋Š” ์ƒ๊ด€์—†์ด ์ถ”์ƒ ๋ฉ”์„œ๋“œ๊ฐ€ ์˜ค์ง ํ•˜๋‚˜์ธ ํ•จ์ˆ˜ํ˜• ์ธํ„ฐํŽ˜์ด์Šค์ด๋‹ค. ๋žŒ๋‹ค์‹์€ ํ•จ์ˆ˜ํ˜• ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ๋งŒ ์ž‘์„ฑ๋  ์ˆ˜ ์žˆ๋‹ค. ๐Ÿง ์ธํ„ฐํŽ˜์ด์Šค ๋ฐ ์ถ”์ƒ ํด๋ž˜์Šค์™€ ์ถ”์ƒ ๋ฉ”์„œ๋“œ ์ธํ„ฐํŽ˜์ด์Šค์™€ ์ถ”์ƒ ํด๋ž˜์Šค๋Š” ์ƒ์†(extends) ๋ฐ›๊ฑฐ๋‚˜ ๊ตฌํ˜„(implements)ํ•˜๋Š” ํด๋ž˜์Šค๊ฐ€ ์ธํ„ฐํŽ˜์ด์Šค๋‚˜ ์ถ”์ƒ ํด๋ž˜์Šค ๋‚ด ์ถ”์ƒ ๋ฉ”์„œ๋“œ๋ฅผ ๊ตฌํ˜„ํ•˜๋„๋ก ๊ฐ•์ œํ•œ๋‹ค. - ์ธํ„ฐํŽ˜์ด์Šค (๋‹คํ˜•์„ฑ์˜ ํŠน์ง•) ๊ณตํ†ต ๊ธฐ๋Šฅ์ด ํ•„์š”ํ•  ๋•Œ ์ถ”์ƒ ๋ฉ”์„œ๋“œ๋ฅผ ์ •์˜ํ•ด๋†“๊ณ  ๊ตฌํ˜„ํ•˜๋Š” ํด๋ž˜์Šค์—์„œ ๊ฐ ๊ธฐ๋Šฅ์„ ์˜ค๋ฒ„๋ผ์ด๋”ฉ ํ•˜์—ฌ ์—ฌ๋Ÿฌ ํ˜•ํƒœ, ๊ธฐ๋Šฅ์œผ๋กœ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๋‹ค. - ์ถ”์ƒ ํด๋ž˜์Šค (์ƒ์†์˜ ํŠน์ง•) ์ƒ์† ๊ด€๊ณ„์—์„œ ๊ฐ™์€ ๋ถ€๋ชจ ์ถ”์ƒ ํด๋ž˜์Šค๋ฅผ ์ƒ์†๋ฐ›๋Š” ์ž์‹ ํด๋ž˜์Šค ๊ฐ„์— ๊ณตํ†ต ๊ธฐ๋Šฅ์„ ๊ฐ๊ฐ ๊ตฌํ˜„ํ•˜๊ณ  ํ™•์žฅ์‹œํ‚จ๋‹ค. ๊ทธ.. 2022. 1. 14.
[JAVA 8] ๋žŒ๋‹ค ํ‘œํ˜„์‹ ๋žŒ๋‹ค ํ‘œํ˜„์‹(Lambda Expression) ์ต๋ช… ํ•จ์ˆ˜(Anonymous Function)๋ฅผ ๋‹จ์ˆœํ™”ํ•˜์—ฌ ๊ฐ„๋‹จํ•˜๊ฒŒ ์ค„์ธ ํ‘œํ˜„์‹์ด๋‹ค. ๋žŒ๋‹ค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ฝ”๋“œ๋ฅผ ๊ฐ„๊ฒฐํ•˜๊ฒŒ ํ‘œํ˜„ํ•˜๊ณ , ๋ฉ€ํ‹ฐ์Šค๋ ˆ๋“œ๋ฅผ ํ™œ์šฉํ•˜์—ฌ ๋ณ‘๋ ฌ์ฒ˜๋ฆฌ๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ง€์—ฐ์—ฐ์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜์—ฌ ๋ถˆํ•„์š”ํ•œ ์—ฐ์‚ฐ์„ ์ตœ์†Œํ™”ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ต๋ช… ํ•จ์ˆ˜(Anonymous Function) ๋ณ€์ˆ˜์— ํ•จ์ˆ˜ ๋ฆฌํ„ฐ๋Ÿด ๋ฐฉ์‹์œผ๋กœ ์ €์žฅํ•œ ์ด๋ฆ„ ์—†๋Š” ํ•จ์ˆ˜์ด๋‹ค. ๋ณ€์ˆ˜์— ์ดˆ๊ธฐํ™”ํ•œ ์ต๋ช… ํ•จ์ˆ˜๋Š” ํ˜ธ์ถœ ์‹œ ๋ณ€์ˆ˜๋ช…์„ ํ•จ์ˆ˜๋ช…์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•œ๋‹ค. ๐Ÿง ์ต๋ช…ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ  ์„ ์–ธ ํ•จ์ˆ˜๋Š” ํ”„๋กœ๊ทธ๋žจ์ด ์‹œ์ž‘๋˜๋ฉด ๋ชจ๋‘ ์ „์—ญ์œผ๋กœ ์ดˆ๊ธฐํ™”๋˜๋ฉฐ ๋ฉ”๋ชจ๋ฆฌ๋ฅผ ์žก์•„๋จน๋Š”๋‹ค. ์žฌ์‚ฌ์šฉ์ด ํ•„์š”ํ•˜์ง€ ์•Š๋‹ค๋ฉด ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•  ๋•Œ๋งˆ๋‹ค ์„ ์–ธ ํ•จ์ˆ˜๋ฅผ ์ฐพ์•„์„œ ํ˜ธ์ถœํ•  ์ด์œ ๊ฐ€ ์—†๋‹ค. ์ต๋ช…ํ•จ์ˆ˜๋Š” ์ผ๊ธ‰ ๊ฐ์ฒด(First Class citizen)๋ผ๋Š” ํŠน.. 2022. 1. 13.
๊ธฐ๋Šฅ๊ฐœ๋ฐœ (Java) https://programmers.co.kr/learn/courses/30/lessons/42586 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๊ธฐ๋Šฅ๊ฐœ๋ฐœ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ํŒ€์—์„œ๋Š” ๊ธฐ๋Šฅ ๊ฐœ์„  ์ž‘์—…์„ ์ˆ˜ํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค. ๊ฐ ๊ธฐ๋Šฅ์€ ์ง„๋„๊ฐ€ 100%์ผ ๋•Œ ์„œ๋น„์Šค์— ๋ฐ˜์˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜, ๊ฐ ๊ธฐ๋Šฅ์˜ ๊ฐœ๋ฐœ์†๋„๋Š” ๋ชจ๋‘ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋’ค์— ์žˆ๋Š” ๊ธฐ๋Šฅ์ด ์•ž์— ์žˆ๋Š” programmers.co.kr ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๊ณ ๋“์  Kit ๊ธฐ๋Šฅ๊ฐœ๋ฐœ ๋ฌธ์ œ ํ’€์ด์ด๋‹ค. ๋ฆฌ์ŠคํŠธ๋งŒ ์ด์šฉํ•ด์„œ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ’€์–ด๋ณด์•˜๋Š”๋ฐ, ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค ํ’€์ด๋ฅผ ์ฐธ์กฐํ–ˆ์„ ๋•Œ ์•ž ์ž‘์—…์ด ๋๋‚˜๋Š” ๋‚ ์งœ๋ฅผ ๋ฏธ๋ฆฌ ๋น„๊ตํ•˜์—ฌ ํ•„์š”ํ•œ ๊ฒƒ๋งŒ ํ์— ๋„ฃ์–ด์ฃผ๋Š” ๋ฐฉ์‹์ด ๊น”๋”ํ•ด๋ณด์˜€๋‹ค. import java.util.*; class Solution { public int[] solution(int[] progresse.. 2021. 11. 12.
๋ฒ ์ŠคํŠธ์•จ๋ฒ” (Java) https://programmers.co.kr/learn/courses/30/lessons/42579 ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์—ฐ์Šต - ๋ฒ ์ŠคํŠธ์•จ๋ฒ” ์ŠคํŠธ๋ฆฌ๋ฐ ์‚ฌ์ดํŠธ์—์„œ ์žฅ๋ฅด ๋ณ„๋กœ ๊ฐ€์žฅ ๋งŽ์ด ์žฌ์ƒ๋œ ๋…ธ๋ž˜๋ฅผ ๋‘ ๊ฐœ์”ฉ ๋ชจ์•„ ๋ฒ ์ŠคํŠธ ์•จ๋ฒ”์„ ์ถœ์‹œํ•˜๋ ค ํ•ฉ๋‹ˆ๋‹ค. ๋…ธ๋ž˜๋Š” ๊ณ ์œ  ๋ฒˆํ˜ธ๋กœ ๊ตฌ๋ถ„ํ•˜๋ฉฐ, ๋…ธ๋ž˜๋ฅผ ์ˆ˜๋กํ•˜๋Š” ๊ธฐ์ค€์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค. ์†ํ•œ ๋…ธ๋ž˜๊ฐ€ programmers.co.kr ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ๊ณ ๋“์  Kit ๋ฒ ์ŠคํŠธ์•จ๋ฒ” ๋ฌธ์ œ ํ’€์ด์ด๋‹ค. ๋ฌธ์ œ๊ฐ€ ๊น”๋”ํ•˜๊ฒŒ ํ’€๋ฆฌ์ง€๋Š” ์•Š์•˜๋Š”๋ฐ ์ •๋ ฌ๋ฒ•์„ ๋ฐฐ์šฐ๋Š”๋ฐ ๋„์›€์ด ๋˜์—ˆ๋˜ ๋ฌธ์ œ์ด๋‹ค. import java.util.*; class Solution { public int[] solution(String[] genres, int[] plays) { // ์žฅ๋ฅด, ์žฅ๋ฅด๋ณ„ ์ด ์žฌ์ƒํšŸ์ˆ˜ Map playsMap =.. 2021. 11. 3.
์ž๋ฐ” Map ์ž์ฃผ ์“ฐ๋Š” ๋ฉ”์„œ๋“œ ์ •๋ฆฌ ๊ฐ’ ๋„ฃ๊ธฐ & ๊ฐ€์ ธ์˜ค๊ธฐ put() / get(key) Map map = new HashMap(); map.put("์˜์ž", 10); map.put("์ฑ…์ƒ", 5); map.put("๋ฉ€ํ‹ฐํƒญ", 3); int val = 0; val = map.get("์˜์ž");// 10 val = map.get("์ฑ…์ƒ");// 5 val = map.get("๋ฉ€ํ‹ฐํƒญ");// 3 ํ‚ค๊ฐ€ ์žˆ์œผ๋ฉด ๊ฐ’ ๋ฐ˜ํ™˜, ์—†์œผ๋ฉด ๊ธฐ๋ณธ ๊ฐ’ ๋ฐ˜ํ™˜ getOrDefault(key, default) String[] alphabet = {"A", "B", "C" ,"A"}; Map map = new HashMap(); for (String key : alphabet) { map.put(key, map.getOrDefault(key, 0) + 1); } // .. 2021. 11. 2.
์ž๋ฐ” ๋ฐฐ์—ด, ๋ฆฌ์ŠคํŠธ ์ •๋ ฌ (Array, List ์ •๋ ฌ) ๋ฐฐ์—ด(Array) ์ •๋ ฌ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ int[] arr = {1, 2, 4, 5, 3}; Arrays.sort(arr); ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ int[] arr = {1, 2, 4, 5, 3}; Arrays.sort(arr, Collections.reverseOrder()); ์ผ๋ถ€๋งŒ ์ •๋ ฌ int[] arr = {1, 2, 5, 4, 3};// 1 2 4 5 3 Arrays.sort(arr, 0, 4);// 1, 2, 4, 5 ์š”์†Œ๋งŒ ์ •๋ ฌ ๋ฆฌ์ŠคํŠธ(List) ์ •๋ ฌ ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ ArrayList list = new ArrayList(Arrays.asList("c", "a", "b")); Collections.sort(list);// a b c ArrayList list = new ArrayList(Arrays.as.. 2021. 11. 2.