๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๋ฐ˜์‘ํ˜•

java51

[Java-๊ธฐ์ดˆ] ๋žŒ๋‹ค์‹ โ–ถ ๋žŒ๋‹ค์‹ *ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ๊ณผ ๋žŒ๋‹ค์‹ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ์ค‘์—๋Š” ํ•จ์ˆ˜์˜ ๊ตฌํ˜„๊ณผ ํ˜ธ์ถœ๋งŒ์œผ๋กœ ํ”„๋กœ๊ทธ๋žจ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋Š” ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹์ด ์žˆ๋‹ค. ์ด๋ฅผ 'ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ'์ด๋ผ๊ณ  ํ•œ๋‹ค. ์ž๋ฐ”์—์„œ ์ œ๊ณตํ•˜๋Š” ํ•จ์ˆ˜ํ˜• ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ฐฉ์‹์„ '๋žŒ๋‹ค์‹'์ด๋ผ๊ณ  ํ•œ๋‹ค. โ€‹ โ€‹ โ€‹ *๋žŒ๋‹ค์‹ ๊ตฌํ˜„ํ•˜๊ธฐ ๋žŒ๋‹ค์‹์€ ๊ฐ„๋‹จํžˆ ์„ค๋ช…ํ•˜๋ฉด ํ•จ์ˆ˜ ์ด๋ฆ„์ด ์—†๋Š” ์ต๋ช… ํ•จ์ˆ˜๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด๋‹ค. โ€‹ โ€‹ *๋žŒ๋‹ค์‹ ๋ฌธ๋ฒ• ์‚ดํŽด๋ณด๊ธฐ โ€‹ -๋งค๊ฐœ๋ณ€์ˆ˜ ์ž๋ฃŒํ˜•๊ณผ ๊ด„ํ˜ธ ์ƒ๋žตํ•˜๊ธฐ -์ค‘๊ด„ํ˜ธ ์ƒ๋žตํ•˜๊ธฐ -return ์ƒ๋žตํ•˜๊ธฐ โ€‹ โ€‹ โ€‹ *๋žŒ๋‹ค์‹ ์‚ฌ์šฉํ•˜๊ธฐ โ€‹ MyNumber.java package lambda; public interface MyNumber { int getMax(int num1, int num2); // ์ถ”์ƒ ๋ฉ”์„œ๋“œ ์„ ์–ธ } TestMyNumber.java pack.. 2021. 2. 22.
[Java-๊ธฐ์ดˆ] ๋‚ด๋ถ€ ํด๋ž˜์Šค โ–ถ ๋‚ด๋ถ€ ํด๋ž˜์Šค *๋‚ด๋ถ€ ํด๋ž˜์Šค ์ •์˜์™€ ์œ ํ˜• → ์ฃผ๋กœ ๋ณด์•ˆ์ชฝ์—์„œ ๋งŽ์ด ์“ฐ์ž„ ๋‚ด๋ถ€ ํด๋ž˜์Šค๋Š” ๋ง ๊ทธ๋Œ€๋กœ 'ํด๋ž˜์Šค ๋‚ด๋ถ€์— ์„ ์–ธํ•œ ํด๋ž˜์Šค'์ด๋‹ค. ๋‚ด๋ถ€์— ํด๋ž˜์Šค๋ฅผ ์„ ์–ธํ•˜๋Š” ์ด์œ ๋Š” ๋Œ€๊ฐœ ์ด ํด๋ž˜์Šค์™€ ์™ธ๋ถ€ ํด๋ž˜์Šค๊ฐ€ ๋ฐ€์ ‘ํ•œ ๊ด€๋ จ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๋˜ํ•œ ๊ทธ ๋ฐ–์˜ ๋‹ค๋ฅธ ํด๋ž˜์Šค์™€ ํ˜‘๋ ฅํ•  ์ผ์ด ์—†๋Š” ๊ฒฝ์šฐ์— ๋‚ด๋ถ€ ํด๋ž˜์Šค๋กœ ์„ ์–ธํ•ด์„œ ์‚ฌ์šฉํ•œ๋‹ค. ์ธ์Šคํ„ด์Šค ๋‚ด๋ถ€ ํด๋ž˜์Šค, ์ •์ (static) ๋‚ด๋ถ€ ํด๋ž˜์Šค, ์ง€์—ญ(local) ๋‚ด๋ถ€ ํด๋ž˜์Šค๊ฐ€ ์žˆ๋Š”๋ฐ, ์ด๊ฒƒ์€ ํด๋ž˜์Šค ๋‚ด๋ถ€์— ์„ ์–ธํ•˜๋Š” ๋ณ€์ˆ˜์˜ ์œ ํ˜•(์ธ์Šคํ„ด์Šค ๋ณ€์ˆ˜, ์ •์  ๋ณ€์ˆ˜, ์ง€์—ญ ๋ณ€์ˆ˜)๊ณผ ์œ ์‚ฌํ•˜๋‹ค. ๋งˆ์ง€๋ง‰์œผ๋กœ ํด๋ž˜์Šค ์ด๋ฆ„ ์—†์ด ์„ ์–ธํ•˜๊ณ  ๋ฐ”๋กœ ์ƒ์„ฑํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์ต๋ช…(anonymous) ๋‚ด๋ถ€ ํด๋ž˜์Šค๊ฐ€ ์žˆ๋‹ค. โ€‹ โ€‹ โ€‹ *์ธ์Šคํ„ด์Šค ๋‚ด๋ถ€ ํด๋ž˜์Šค ์ธ์Šคํ„ด์Šค ๋‚ด๋ถ€ ํด๋ž˜์Šค๋Š” ์ธ์Šคํ„ด์Šค ๋ณ€์ˆ˜๋ฅผ ์„ ์–ธํ•  ๋•Œ์™€.. 2021. 2. 22.
[Java-๊ธฐ์ดˆ] Map ์ธํ„ฐํŽ˜์ด์Šค โ–ถ Map ์ธํ„ฐํŽ˜์ด์Šค Map ์ธํ„ฐํŽ˜์ด์Šค๋Š” ์ž๋ฃŒ๋ฅผ ์Œ์œผ๋กœ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ๋ฉ”์„œ๋“œ๊ฐ€ ์ •์˜๋˜์–ด ์žˆ๋‹ค. Key-value ์Œ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๊ฐ์ฒด์˜ key ๊ฐ’์€ ์œ ์ผํ•˜๋ฉฐ value ๊ฐ’์€ ์ค‘๋ณต๋  ์ˆ˜ ์žˆ๋‹ค. Map ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•œ ํด๋ž˜์Šค๋Š” ๋‚ด๋ถ€์ ์œผ๋กœ ํ•ด์‹œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ์˜ํ•ด ๊ตฌํ˜„๋˜์–ด ์žˆ๋‹ค. โ€‹ โ€‹ โ€‹ *HashMap ํด๋ž˜์Šค HashMap์€ Map ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•œ ํด๋ž˜์Šค ์ค‘ ๊ฐ€์žฅ ๋งŽ์ด ์‚ฌ์šฉํ•œ๋‹ค. HashMap์—์„œ ์ž๋ฃŒ๋ฅผ ๊ด€๋ฆฌํ•˜๋Š” ๋ฐฉ์‹์€ 'ํ•ด์‹œ ๋ฐฉ์‹'์ด๋‹ค. ํ•ด์‹œ ๋ฐฉ์‹์˜ ์ž๋ฃŒ๋ฅผ ์ €์žฅํ•˜๋Š” ๊ณต๊ฐ„์„ 'ํ•ด์‹œ ํ…Œ์ด๋ธ”'์ด๋ผ ํ•œ๋‹ค. key ๊ฐ’์ด ์ •ํ•ด์ง€๋ฉด ๊ทธ์— ๋Œ€์‘ํ•˜๋Š” ํ•ด์‹œ ํ…Œ์ด๋ธ”์˜ ์ €์žฅ ์œ„์น˜๊ฐ€ ์ •ํ•ด์ง€๋Š”๋ฐ ์ด๋Ÿฐ ์œ„์น˜๋ฅผ ๊ณ„์‚ฐํ•˜๋Š” ํ•จ์ˆ˜๊ฐ€ 'ํ•ด์‹œ ํ•จ์ˆ˜'์ด๋‹ค. ์ž๋ฃŒ ์ถ”๊ฐ€ ์†๋„๋‚˜ ๊ฒ€์ƒ‰ ์†๋„๊ฐ€ ์ƒ๋‹นํžˆ ๋น ๋ฅด๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค. ์„œ๋กœ ๋‹ค๋ฅธ key.. 2021. 2. 22.
[Java-๊ธฐ์ดˆ] Comparable ์ธํ„ฐํŽ˜์ด์Šค์™€ Comparator ์ธํ„ฐํŽ˜์ด์Šค โ–ถ Comparable ์ธํ„ฐํŽ˜์ด์Šค์™€ Comparator ์ธํ„ฐํŽ˜์ด์Šค Member ํด๋ž˜์Šค๊ฐ€ ๊ฐ€์ง„ ํšŒ์› ์•„์ด๋””๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ•˜์—ฌ ์˜ค๋ฆ„์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•  ๊ฒƒ์ธ๋ฐ, Comparable๊ณผ Comparator๋Š” ์ด๋Ÿฌํ•œ ์ •๋ ฌ์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ์ธํ„ฐํŽ˜์ด์Šค์ด๋‹ค. โ€‹ โ€‹ โ€‹ *์ž๊ธฐ ์ž์‹ ๊ณผ ์ „๋‹ฌ๋ฐ›์€ ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ๋น„๊ตํ•˜๋Š” Comparable ์ธํ„ฐํŽ˜์ด์Šค Comparable ์ธํ„ฐํŽ˜์ด์Šค์—๋Š” compareTo( ) ์ถ”์ƒ ๋ฉ”์„œ๋“œ๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ๋‹ค. package collection; public class Member implements Comparable { private int memberID; private String memberName; public Member(int memberID, String memberName) { th.. 2021. 2. 22.
[Java-๊ธฐ์ดˆ] set ์ธํ„ฐํŽ˜์ด์Šค โ–ถ set ์ธํ„ฐํŽ˜์ด์Šค โ€‹ *HashSet ํด๋ž˜์Šค HashSet ํด๋ž˜์Šค๋Š” ์ง‘ํ•ฉ ์ž๋ฃŒ ๊ตฌ์กฐ๋ฅผ ๊ตฌํ˜„ํ•˜๋ฉฐ ์ค‘๋ณต์„ ํ—ˆ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค. โ€‹ โ€‹ HashSetTest.java package collection.hashset; import java.util.HashSet; public class HashSetTest { public static void main(String[] args) { HashSet hashSet = new HashSet(); hashSet.add(new String("์ž„์ •์ˆœ")); hashSet.add(new String("๋ฐ•ํ˜„์ •")); hashSet.add(new String("ํ™์—ฐ์˜")); hashSet.add(new String("๊ฐ•๊ฐ์ฐฌ")); hashSet.add(new String("๊ฐ•.. 2021. 2. 22.
[Java-๊ธฐ์ดˆ] Iterator๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์š”์†Œ๋ฅผ ์ˆœํšŒํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”์„œ๋“œ โ–ถ Iterator๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์š”์†Œ๋ฅผ ์ˆœํšŒํ•  ๋•Œ ์‚ฌ์šฉํ•˜๋Š” ๋ฉ”์„œ๋“œ MemberArrayList.java์˜ removeMember( ) ๋ฉ”์„œ๋“œ๋ฅผ ๋ณด๋ฉด for ๋ฌธ๊ณผ get(i) ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํšŒ์›์„ ์ˆœ์ฐจ์ ์œผ๋กœ ํ•˜๋‚˜์”ฉ ๊บผ๋‚ด๋ฉด์„œ ๋งค๊ฐœ๋ณ€์ˆ˜์™€ ๊ฐ™์€ ์•„์ด๋””๋ฅผ ์ฐพ๋Š”๋‹ค. ๊ทธ๋Ÿฐ๋ฐ ์ˆœ์„œ๊ฐ€ ์—†๋Š” Set ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•œ ๊ฒฝ์šฐ์—๋Š” get(i) ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ด ๋•Œ Iterator๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค. Iterator๋Š” Collection ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•œ ๊ฐ์ฒด์—์„œ ๋ฏธ๋ฆฌ ์ •์˜๋˜์–ด์žˆ๋Š” iterator( ) ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ์ฐธ์กฐํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด Collection์„ ๊ตฌํ˜„ํ•œ ArrayList์— iterator( ) ๋ฉ”์„œ๋“œ๋ฅผ ํ˜ธ์ถœํ•˜๋ฉด Iterator ํด๋ž˜์Šค๊ฐ€ ๋ฐ˜ํ™˜๋˜๋ฏ€๋กœ ๋‹ค์Œ์ฒ˜๋Ÿผ Iteratorํ˜• ๋ณ€์ˆ˜์— ๋Œ€์ž…ํ•ด ์‚ฌ์šฉํ•œ๋‹ค. .. 2021. 2. 22.
๋ฐ˜์‘ํ˜•