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

๐Ÿ–ฅ๏ธ/Java23

[Java] ์‹ค์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” double, float, decimal์˜ ์ฐจ์ด์  decimal, float, ๊ทธ๋ฆฌ๊ณ  double์€ ์‹ค์ˆ˜๋ฅผ ํ‘œํ˜„ํ•˜๋Š” ๋ฐ์ดํ„ฐ ํƒ€์ž…์ด์ง€๋งŒ, ๊ทธ๋“ค ๊ฐ„์—๋Š” ๋ช‡ ๊ฐ€์ง€ ์ค‘์š”ํ•œ ์ฐจ์ด์ ์ด ์žˆ๋‹ค. ์ •ํ™•์„ฑ decimal์€ ์ •ํ™•ํ•œ ์‹ญ์ง„๋ฒ•(decimal system) ์ˆซ์ž๋ฅผ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋‹ค. ๋”ฐ๋ผ์„œ ๊ธˆ์œต ๋ถ„์•ผ์™€ ๊ฐ™์ด ์ •ํ™•ํ•œ ์†Œ์ˆ˜ ๊ณ„์‚ฐ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ์— ์ ํ•ฉํ•˜๋‹ค. ๋ฐ˜๋ฉด์— float์™€ double์€ ๋ถ€๋™ ์†Œ์ˆ˜์ (float-point) ํƒ€์ž…์œผ๋กœ, ๊ทผ์‚ฌ์น˜๋กœ ์ˆซ์ž๋ฅผ ํ‘œํ˜„ํ•œ๋‹ค. ํ‘œํ˜„ ๋ฒ”์œ„ decimal์€ ํฐ ์ˆซ์ž์™€ ์ž‘์€ ์ˆซ์ž๋ฅผ ๋ชจ๋‘ ์ •ํ™•ํ•˜๊ฒŒ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฐ ๋ฐ˜ํ•ด, float์™€ double์€ ์œ ํšจ ์ˆซ์ž ๋ฒ”์œ„์— ์ œํ•œ์ด ์žˆ๋‹ค. float๋Š” ๋Œ€๋žต 7์ž๋ฆฌ์˜ ์œ ํšจ ์ˆซ์ž๋ฅผ ๊ฐ€์ง€๋ฉฐ, double์€ ๋Œ€๋žต 15์ž๋ฆฌ์˜ ์œ ํšจ ์ˆซ์ž๋ฅผ ๊ฐ€์ง„๋‹ค. ๋ฉ”๋ชจ๋ฆฌ ์‚ฌ์šฉ decimal์€ ์ •๋ฐ€ํ•œ ์†Œ์ˆ˜ ๊ณ„์‚ฐ์„ ์œ„ํ•ด ๋” ๋งŽ์€ .. 2023. 7. 5.
[Java] HashSet์ด๋ž€? set์€ ๊ฐ์ฒด๋ฅผ ์ค‘๋ณตํ•ด์„œ ์ €์žฅํ•  ์ˆ˜ ์—†๋‹ค(null๊ฐ’๋„ ๋งˆ์ฐฌ๊ฐ€์ง€) -> ์ค‘๋ณต ๋ฐ์ดํ„ฐ๊ฐ€ ๋“ค์–ด์˜ค๋ฉด ์ž๋™์œผ๋กœ ์ œ๊ฑฐํ•ด์ค€๋‹ค. HashSet์€ set์˜ ์„ฑ์งˆ์„ ๊ทธ๋Œ€๋กœ ๋ฐ›๊ณ , ์ˆœ์„œ๊ฐ€ ์—†๋‹ค. ๋งŒ์•ฝ ์ €์žฅ ์ˆœ์„œ๋ฅผ ์ €์žฅํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด LinkedHashSet์„ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค. ์‚ฌ์šฉ๋ฒ•์€ ArrayList๋ž‘ ๋™์ผํ•˜๋‹ค HashSet ์„ ์–ธํ•˜๊ธฐ Hashset ์ด๋ฆ„ = new HashSet(ํฌ๊ธฐ-์ƒ๋žต๊ฐ€๋Šฅ); HashSet์— ์š”์†Œ ์ถ”๊ฐ€ํ•˜๊ธฐ HashSet numbers = new HashSet(); numbers.add(1); numbers.add(2); numbers.add(3); HashSet ์š”์†Œ ์‚ญ์ œํ•˜๊ธฐ HashSet numbers = new HashSet(Arrays.asList(1,2,3)); numbers.remove(2); //.. 2023. 6. 8.
[Java] Servlet๊ณผ JSP์˜ ์—ญ์‚ฌ JSP(Java Server Pages)๋Š” Java์–ธ์–ด๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ์Šคํฌ๋ฆฝํŠธ ์–ธ์–ด๋กœ, Servlet์„ ์‰ฝ๊ฒŒ ์“ธ ์ˆ˜ ์žˆ๊ฒŒ ๋งŒ๋“ค์–ด์ค€ ๊ฒƒ์ด๋‹ค. ์ฆ‰, JSP์˜ ๊ธฐ๋ณธ ๋ฌธ๋ฒ•์€ ์ž๋ฐ”๋ฅผ ๊ทผ๊ฑฐ๋กœ ํ•˜๊ณ  ์žˆ๊ณ , Java๋กœ ์ž‘์„ฑํ•œ ์„œ๋ฒ„ ํŽ˜์ด์ง€์ด๋‹ค. Java ์›นํ”„๋กœ๊ทธ๋žจ์˜ ์—ญ์‚ฌ๋ฅผ ์ž ๊น ์‚ดํŽด๋ณด์ž๋ฉด.. HTML์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์ฝ”๋“œ๋ฅผ ์ด์šฉํ•  ์ˆ˜ ์—†๋‹ค๋Š” ์ ๊ณผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์—ฐ๋™ํ•  ์ˆ˜ ์—†๋‹ค๋Š” ์  ๋•Œ๋ฌธ์— ํ•ญ์ƒ ๊ฐ™์€ ๋‚ด์šฉ์„ ํ‘œ์‹œํ•˜๋Š” ์ •์ ์ธ ์›นํŽ˜์ด์ง€๋งŒ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋‹ค. C์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•ด์„œ DB๋ฅผ ์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•  ๋ชฉ์ ์œผ๋กœ C์–ธ์–ด์™€ DB์—ฐ๋™์„ ์œ„ํ•œ library์ธ oracle์ด ํ•ฉ์ณ์ ธ์„œ Pro-C๋ผ๋Š”๊ฒŒ ๋งŒ๋“ค์–ด์กŒ๋‹ค. ์ด๋•Œ๋Š” WAS๋‚˜ ๊ทธ๋Ÿฐ๊ฑฐ ์—†์ด CGI(Common Gateway Interface)๋ฐฉ์‹์„ ์‚ฌ์šฉํ–ˆ๋Š”๋ฐ, ์›น์„œ๋ฒ„๊ฐ€ ๋ฐ”๋กœ ํ”„๋กœ๊ทธ๋žจ์„ ์—ฐ๋™ํ–ˆ๋‹ค. .. 2023. 4. 17.
[Java] JDBC(Java Database Connectivity)๋ž€? ์˜ˆ์‹œ ์ฝ”๋“œ๋กœ ์ž‘๋™ ๋ฐฉ๋ฒ• ๋ณด๊ธฐ JDBC: ์ž๋ฐ” ํ”„๋กœ๊ทธ๋žจ์—์„œ ๊ด€๊ณ„ํ˜• ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ์—ฐ๊ฒฐํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์กฐํšŒ, ์‚ฝ์ž…, ์ˆ˜์ •, ์‚ญ์ œ ๋“ฑ์˜ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์ž๋ฐ” API JDBC๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋‹ค์–‘ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์‹œ์Šคํ…œ๊ณผ ์ƒํ˜ธ์ž‘์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋Œ€ํ•œ SQL ์ฟผ๋ฆฌ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ๊ฒฐ๊ณผ๋ฅผ ์ฒ˜๋ฆฌํ•  ์ˆ˜ ์žˆ๋‹ค. JDBC ์ฃผ์š” ์š”์†Œ - JDBC ๋“œ๋ผ์ด๋ฒ„: JDBC API์™€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ฐ„์˜ ํ†ต์‹ ์„ ๋‹ด๋‹นํ•˜๋ฉฐ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ, ์ฟผ๋ฆฌ ์‹คํ–‰ ๋ฐ ๊ฒฐ๊ณผ ์ฒ˜๋ฆฌ ๋“ฑ์„ ์ˆ˜ํ–‰ - JDBC API: ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์—ฐ๊ฒฐ, ์ฟผ๋ฆฌ ์‹คํ–‰, ๊ฒฐ๊ณผ ์ฒ˜๋ฆฌ, ํŠธ๋žœ์žญ์…˜ ๊ด€๋ฆฌ ๋“ฑ ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๋ฉ”์„œ๋“œ๋ฅผ ์ œ๊ณตํ•˜๋Š” API(Connection, Statement, ResultSet ๋“ฑ) JDBC ์ž‘๋™ ์ˆœ์„œ 1. JDBC ๋“œ๋ผ์ด๋ฒ„ ๋กœ๋“œ 2. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์—ฐ๊ฒฐ .. 2023. 4. 17.
[Java] ์ž๋ฐ”๋ฅผ ํ•œ๋‹ค๋ฉด ์•Œ์•„์•ผ ํ•˜๋Š” ์šฉ์–ด๋“ค ์ปดํ“จํ„ฐ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋Š” ํฌ๊ฒŒ ์ปดํŒŒ์ผ ์–ธ์–ด์™€ ์ธํ„ฐํ”„๋ฆฌํ„ฐ ์–ธ์–ด๋กœ ๋‚˜๋‰œ๋‹ค. ์ปดํŒŒ์ผ ์–ธ์–ด(C, C++ ..)๋Š” ๋ฒˆ์—ญ๊ณผ ์‹คํ–‰์ด ๋”ฐ๋กœ ์ด๋ฃจ์–ด์ง€๋Š” ์–ธ์–ด์ด๊ณ , ์ธํ„ฐํ”„๋ฆฌํ„ฐ ์–ธ์–ด(Python, JavaScript ..)๋Š” ๋ฒˆ์—ญ๊ณผ ์‹คํ–‰์„ ๋™์‹œ์— ์ง„ํ–‰ํ•˜๋Š” ์–ธ์–ด์ด๋‹ค. ์ธํ„ฐํ”„๋ฆฌํ„ฐ ์–ธ์–ด๋Š” ์†Œ์Šค์ฝ”๋“œ๋ฅผ ์ค„ ๋‹จ์œ„๋กœ ๋ฒˆ์—ญํ•˜๊ณ  ์‹คํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‹คํ–‰์ด ๋Š๋ฆฌ์ง€๋งŒ, ์˜ค๋ฅ˜๊ฐ€ ์žˆ์œผ๋ฉด ๊ทธ ์ค„ ์•„๋ž˜๋กœ๋Š” ์•„์˜ˆ ์‹คํ–‰์ด ์•ˆ๋˜๊ธฐ ๋•Œ๋ฌธ์— ๋””๋ฒ„๊น…์ด ์‰ฝ๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ์ปดํŒŒ์ผ ์–ธ์–ด๋Š” ์ปดํŒŒ์ผ์ด ์˜ค๋ž˜๊ฑธ๋ฆด ์ˆ˜ ์žˆ์ง€๋งŒ ํ•œ ๋ฒˆ ์ปดํŒŒ์ผ์ด ๋์œผ๋ฉด ์‹คํ–‰๋งŒ ์‹œํ‚ค๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์‹คํ–‰์€ ๋นจ๋ฆฌ ํ•  ์ˆ˜ ์žˆ๋‹ค. ํ•˜์ง€๋งŒ ์šด์˜์ฒด์ œ๋งˆ๋‹ค ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐ๊ณ„์–ด๊ฐ€ ๋‹ค๋ฅผ ์ˆ˜ ์žˆ๊ณ , ๊ทธ๋Ÿฐ ๊ฒฝ์šฐ์—๋Š” ๊ทธ OS์— ๋งž๋Š” ์–ธ์–ด๋กœ ๋‹ค์‹œ ์ปดํŒŒ์ผ์„ ํ•ด์ค˜์•ผํ•œ๋‹ค. Java๋Š” ์–ผํ• ๋ณด๋ฉด ๋‹น์—ฐํžˆ ์ปดํŒŒ์ผ ์–ธ์–ด ๊ฐ™์ง€๋งŒ, .. 2023. 4. 14.
[Java] Chapter04: ๋๋ง์ž‡๊ธฐ ๊ฒŒ์ž„ (Word Chain) n๋ช…์ด ์ฐธ๊ฐ€ํ•˜๋Š” ๋๋ง์ž‡๊ธฐ ๊ฒŒ์ž„์„ ๋งŒ๋“ค์–ด๋ณด์ž. ์ฒ˜์Œ ๋‹จ์–ด๋Š” '๋ผ๋ฉด'์œผ๋กœ ์ง€์ •๋˜์–ด ์žˆ๊ณ , ์›ํ•˜๋Š” ์ฐธ๊ฐ€ ์ธ์›์ˆ˜๋ฅผ ์ •ํ•ด ์ด๋ฆ„์„ ์ž…๋ ฅํ•  ์ˆ˜ ์žˆ๋‹ค. ๊ทœ์น™์„ ์ถ”๊ฐ€ํ•˜์—ฌ, ์‹œ๊ฐ„์„ ์žฌ์„œ 10์ดˆ๊ฐ€ ์ง€๋‚˜๋ฉด ๋‹จ์–ด๋ฅผ ๋งž๊ฒŒ ์ž…๋ ฅํ•ด๋„ ํŒจ๋ฐฐ์ฒ˜๋ฆฌ๋˜๋„๋ก ๋งŒ๋“ค๋„๋ก ํ•˜์ž. 1. ์ž…๋ ฅํ•œ ์ฐธ๊ฐ€์ธ์›(Player) ์ˆ˜๋งŒํผ์˜ value๋ฅผ ๋ฐ›์„ ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์—ด์ด ์žˆ์–ด์•ผ ํ•œ๋‹ค. 1-1. Player ํด๋ž˜์Šค๋ฅผ ๋งŒ๋“ค๊ณ , ๊ทธ ํด๋ž˜์Šค๋ฅผ ํ™œ์šฉํ•ด์„œ ์ฐธ๊ฐ€์ธ์›์ˆ˜(number)๋งŒํผ์˜ ๊ฐœ์ˆ˜์˜ Player ๊ฐ์ฒด ๋ฐฐ์—ด์„ ๋งŒ๋“ ๋‹ค. 2. ๊ธฐ๋ณธ์ ์ธ ๊ฒŒ์ž„ ๊ทœ์น™์„ ์ ์šฉ์‹œ์ผœ์•ผํ•œ๋‹ค. ๋จผ์ € ๋ง์ด ์ด์–ด์ง€๋„๋ก ์ž…๋ ฅ๋˜๋Š” ๋‹จ์–ด(new word)์˜ ์ฒซ ๊ธ€์ž์™€ ์ „์— ์ž…๋ ฅ๋œ ๋‹จ์–ด(last word)์˜ ๋งˆ์ง€๋ง‰ ๊ธ€์ž๊ฐ€ ๊ฐ™์€์ง€๋ฅผ ํ™•์ธํ•ด์•ผ ํ•œ๋‹ค. 2-1. string์˜ ์ฒซ๊ธ€์ž์™€ ๋งˆ์ง€๋ง‰๊ธ€์ž๋ฅผ ๊ฐ€์ ธ์˜ค๋Š” ๋ฐฉ๋ฒ•์€ s.. 2023. 4. 10.
[Java] final()๊ณผ public static final final์€ ๋ง ๊ทธ๋Œ€๋กœ ๋งˆ์ง€๋ง‰์ด๋ผ๋Š” ์˜๋ฏธ๋ฅผ ๋‹ด๊ณ  ์žˆ๋‹ค. final() ๋ฉ”์†Œ๋“œ๋ฅผ ์„ ์–ธํ•˜๋Š” ๊ฒƒ์€ ์˜ค๋ฒ„๋ผ์ด๋”ฉ์„ ํ•  ์ˆ˜ ์—†๋Š” ๋ฉ”์†Œ๋“œ์ž„์„ ์„ ์–ธํ•˜๋Š” ๊ฒƒ๊ณผ ๊ฐ™๋‹ค. ์ฆ‰ ์ƒ์†๋ฐ›์„ ์ˆ˜ ์—†๋Š” ๋ฉ”์†Œ๋“œ๊ฐ€ ๋œ๋‹ค. final์€ ํ•„๋“œ์— ์„ ์–ธ๋˜๋ฉด ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋Š” ์ƒ์ˆ˜๊ฐ€ ๋œ๋‹ค. ๋งŒ์•ฝ a๋ฅผ final int a = 3; ์ด๋ผ๊ณ  ์„ ์–ธํ•˜๋ฉด, a๊ฐ’์€ ์ด์ œ ๋ณ€ํ•˜์ง€ ์•Š๋Š” ์ƒ์ˆ˜๊ฐ€ ๋˜๋Š” ๊ฒƒ์ด๋‹ค. ๊ทธ๋ž˜์„œ ์ด๋ฅผ ์ž˜ ํ™œ์šฉํ•˜๋ฉด public static final๋กœ ์„ ์–ธ์„ ํ•˜๋ฉด ํ”„๋กœ๊ทธ๋žจ ์ „์ฒด์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ƒ์ˆ˜๊ฐ€ ๋œ๋‹ค. public static final double PI = 3.14; ์ด๋ ‡๊ฒŒ ์„ ์–ธ๋˜๋ฉด ์ด์ œ PI๋Š” ํ”„๋กœ๊ทธ๋žจ๋‚ด์—์„œ ์–ด๋””์„œ๋“  ์‚ฌ์šฉ์ด ๊ฐ€๋Šฅํ•˜๊ณ (ํด๋ž˜์Šค์ด๋ฆ„.PI๋กœ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค), ํ•ญ์ƒ 3.14๊ฐ€ ๋œ๋‹ค. 2023. 4. 9.
[Java] ์ ‘๊ทผ์ œํ•œ์ž์™€ public static void ๋œป ์ ‘๊ทผ์ œํ•œ์ž๋ž€, ๋ณ€์ˆ˜ ๋ฐ ๊ฐ์ฒด(class, interface) ์•ž์— ์„ ์–ธํ•จ์œผ๋กœ์จ ์™ธ๋ถ€ ์ฝ”๋“œ์—์„œ ์ ‘๊ทผ ๋ฒ”์œ„๋ฅผ ํ†ต์ œํ•œ๋‹ค. ์‰ฝ๊ฒŒ ๋งํ•˜๋ฉด, ๊ฐ์ฒด์— ๋‹ค๋ฅธ ๊ฐ์ฒด๊ฐ€ ์ ‘๊ทผํ•˜๋Š” ๊ฒƒ์„ ํ—ˆ์šฉํ• ์ง€ ๋ง์ง€ ์ง€์ •ํ•ด ์ค€๋‹ค. ์ข…๋ฅ˜ ๊ธฐ๋Šฅ public ํŒจํ‚ค์ง€ ์ƒ๊ด€ ์—†์ด ๋ชจ๋“  ์™ธ๋ถ€ ์ฝ”๋“œ์—์„œ ์ ‘๊ทผ ๊ฐ€๋Šฅ private ์™ธ๋ถ€์—์„œ ํด๋ž˜์Šค ๋ณ€์ˆ˜์— ์ง์ ‘ ์ ‘๊ทผํ•  ์ˆ˜ ์—†๊ณ , ํด๋ž˜์Šค์˜ ๋ฉ”์†Œ๋“œ๋ฅผ ํ†ตํ•ด์„œ๋งŒ ์ ‘๊ทผ์ด ๊ฐ€๋Šฅ, ์ƒ์†๋ฐ›์€ ํด๋ž˜์Šค์—์„œ๋„ ์ ‘๊ทผ์ด ๋ถˆ๊ฐ€๋Šฅ protected ๋™์ผํ•œ ํŒจํ‚ค์ง€์˜ ํด๋ž˜์Šค๋“ค๊ณผ ์ƒ์†๋ฐ›์€ ํด๋ž˜์Šค์—์„œ๋งŒ ์ ‘๊ทผ์ด ๊ฐ€๋Šฅ default ๋™์ผํ•œ ํŒจํ‚ค์ง€ ๋‚ด์˜ ํด๋ž˜์Šค๋“ค๋งŒ ์ ‘๊ทผ ๊ฐ€๋Šฅ, ํ‚ค์›Œ๋“œ๋Š” ์ƒ๋žต ๊ฐ€๋Šฅ public static void (String[] args) { ... ์ ‘๊ทผ์ œํ•œ์ž๊ฐ€ ๋“ค์–ด๊ฐ€๋Š” ์ž๋ฆฌ์ด๋‹ค. ํด๋ž˜์Šค๋Š” public ํด๋ž˜์Šค์™€ default ํด๋ž˜.. 2023. 4. 6.

"); wcs_do();