java17 [Java] “๊ทธ๋ฅ for๋ฌธ ์ฐ๋ฉด ์ ๋ผ์?” Java ์ํ ๋ฐฉ์ ์ ๋๋ก ์๊ธฐ ๋ชฉ์ฐจ “์ปฌ๋ ์ ์ ๋ฐ์ดํฐ๋ฅผ ๋ฃ์๋๋ฐ, ์ด๋ป๊ฒ ๊บผ๋ด์ผ ํ ์ง ๋ชจ๋ฅด๊ฒ ์ด์.”“for๋ฌธ ์ฐ๋ค ๊ฐ์๊ธฐ ์์ธ๊ฐ ํฐ์ก๋๋ฐ ์ด์ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์ด์.” Java๋ฅผ ์ฒ์ ๋ฐฐ์ฐ๊ฑฐ๋ ์ค๋ฌด์ ๋ค์ด์จ ์ด๋ณด ๊ฐ๋ฐ์๋ค์ด ๊ฐ์ฅ ์์ฃผ ํผ๋์ค๋ฌ์ํ๋ ๊ฒ ์ค ํ๋๊ฐ ์ปฌ๋ ์ ์ํ ๋ฐฉ์์ ๋๋ค.Iterator, for-each, ListIterator, forEach(), Stream API๊น์ง… ๋๋์ฒด ๋ญ๊ฐ ๋ค๋ฅด๊ณ , ์ธ์ ๋ญ ์จ์ผ ํ ๊น์? ์ด๋ฒ ๊ธ์์๋ ์๋ฐ ์ปฌ๋ ์ ์ํ์ ๋ชจ๋ ๋ฐฉ์์ ์์ ์ฝ๋ ์ค์ฌ์ผ๋ก ๋น๊ตํ๊ณ , ์ค๋ฌด์์ ์์ฃผ ํฐ์ง๋ ์์ธ ์ํฉ๊น์ง ์์๋ณด๊ฒ ์ต๋๋ค.โ ์ ์ปฌ๋ ์ ์ํ ๋ฐฉ์์ด ์ด๋ ๊ฒ ๋ง์๊น?Java๋ ๊พธ์คํ ๋ฐ์ ํด ์ค๋ฉด์ ๊ฐ๋ฐ์๋ค์ ์๊ตฌ์ ๊ธฐ์ ํ๋ฆ์ ๋ง์ถฐ ๋ค์ํ ์ํ ๋ฐฉ์์ ๋์ ํด ์์ต๋๋ค.๊ฐ ๋ฐฉ์์ ๊ทธ ์์ ์์ ๋ถํธํจ์ ํด์ํ๊ฑฐ๋ .. 2025. 6. 13. [Java] HashMap vs TreeMap vs LinkedHashMap, ์ด๋ค ์ํฉ์์ ์จ์ผ ํ ๊น? ๋ชฉ์ฐจ ์ง๊ธ๊น์ง List์ Set์ ๊ตฌํ์ฒด๋ค์ ์ดํด๋ดค๋ค๋ฉด, ์ด์ Key-Value ๊ตฌ์กฐ์ Map ์ธํฐํ์ด์ค ๊ตฌํ์ฒด๋ค์ ๋น๊ตํด ๋ณผ ์ฐจ๋ก์ ๋๋ค.Map์ ๋ฐ์ดํฐ๋ฅผ ํค-๊ฐ ์์ผ๋ก ์ ์ฅํ๋ ์๋ฃ๊ตฌ์กฐ๋ก, ๋น ๋ฅธ ๊ฒ์๊ณผ ํจ์จ์ ์ธ ๋ฐ์ดํฐ ๊ด๋ฆฌ์ ํ์์ ์ ๋๋ค. ์ด๋ฒ ๊ธ์์๋ Java Map ์ธํฐํ์ด์ค์ ๊ธฐ๋ณธ ๊ฐ๋ ๋ถํฐ, ๋ํ ๊ตฌํ์ฒด์ธ HashMap, TreeMap, LinkedHashMap์ ํน์ง๊ณผ ์ฑ๋ฅ์ ํ๋์ ๋น๊ตํด๋ณด๊ฒ ์ต๋๋ค.๐๏ธ Map ์ธํฐํ์ด์ค๋?Map์ Key-Value ํํ๋ก ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ ์๋ฃ๊ตฌ์กฐ๋ก, Key๋ ์ค๋ณต์ด ๋ถ๊ฐ๋ฅํ๋ฉฐ Value๋ ์ค๋ณต์ด ๊ฐ๋ฅํฉ๋๋ค.Map map = new HashMap();map.put("Apple", 1000); // Key: "Apple", Value: 1000map.pu.. 2025. 6. 11. [Java] ArrayList vs LinkedList, HashSet vs TreeSet ๋น๊ต ๋ชฉ์ฐจ ์ปฌ๋ ์ ํ๋ ์์ํฌ์ ์ธํฐํ์ด์ค๋ฅผ ์ดํดํ๋ค๋ฉด, ์ด์ ์ค์ ๊ตฌํ์ฒด๋ค์ ์ฐจ์ด๋ฅผ ์ดํด๋ณผ ์ฐจ๋ก์ ๋๋ค.๊ฐ์ ์ธํฐํ์ด์ค๋ฅผ ๊ตฌํํ๋๋ผ๋ ๋ด๋ถ ๊ตฌ์กฐ์ ์ฑ๋ฅ ํน์ฑ์ด ์์ ํ ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ ์ํฉ์ ๋ง๋ ์ ํ์ด ์ ๋ง ์ค์ํ์ฃ . ์ด๋ฒ ๊ธ์์๋ List์ ๋ํ ๊ตฌํ์ฒด์ธ ArrayList์ LinkedList, Set์ ๋ํ ๊ตฌํ์ฒด์ธ HashSet๊ณผ TreeSet์ ํน์ง๊ณผ ์ฑ๋ฅ์ ์์ ์ฝ๋์ ํจ๊ป ๋น๊ตํด ๋ณด๊ฒ ์ต๋๋ค.๐ฆ ArrayList vs LinkedListArrayListArrayList๋ ๋์ ๋ฐฐ์ด(Dynamic Array) ๊ตฌ์กฐ๋ก, ๋ด๋ถ์ ์ผ๋ก Object ๋ฐฐ์ด์ ์ฌ์ฉํด ์์๋ฅผ ์ ์ฅํฉ๋๋ค.List arrayList = new ArrayList();arrayList.add("Apple"); // ์ธ๋ฑ์ค 0array.. 2025. 6. 4. [Java] ์ปฌ๋ ์ ํ๋ ์์ํฌ ์ ๋ฌธ: List, Set, Map ์ ๋๋ก ์ดํดํ๊ธฐ ๋ชฉ์ฐจ Java๋ก ํ๋ก๊ทธ๋๋ฐ์ ํ๋ค ๋ณด๋ฉด ๋ค์ํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๊ณ ์ฒ๋ฆฌํด์ผ ํ ์ผ์ด ์์ฃผ ์๊น๋๋ค.ํ์ง๋ง ๊ณ ์ ๋ ํฌ๊ธฐ์ ๋ฐฐ์ด๋ง์ผ๋ก๋ ์ ์ฐํ๊ฒ ๋์ํ๊ธฐ ์ด๋ ต์ฃ . Java๋ ์ด๋ฐ ํ๊ณ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์ปฌ๋ ์ ํ๋ ์์ํฌ(Collection Framework)๋ผ๋ ๊ฐ๋ ฅํ ๋๊ตฌ๋ฅผ ์ ๊ณตํฉ๋๋ค.์ด๋ฒ ๊ธ์์๋ ์ปฌ๋ ์ ํ๋ ์์ํฌ์ ์ ์ฒด ๊ตฌ์กฐ์ ํต์ฌ ์ธํฐํ์ด์ค์ธ List, Set, Map์ ๊ฐ๋ ๊ณผ ์ฐจ์ด์ ์ ์ ๋ฆฌํด๋ณด๊ฒ ์ต๋๋ค.๐ฆ ์ปฌ๋ ์ ํ๋ ์์ํฌ๋?์ปฌ๋ ์ ํ๋ ์์ํฌ๋ ์๋ฃ๊ตฌ์กฐ + ์๊ณ ๋ฆฌ์ฆ + ํ์คํ๋ ์ธํฐํ์ด์ค๋ฅผ ํตํฉํ Java์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์งํฉ์ ๋๋ค. ๋ฐฐ์ด๋ณด๋ค ํจ์ฌ ์ ์ฐํ๊ณ ๊ฐ๋ ฅํ ๊ตฌ์กฐ๋ฅผ ์ ๊ณตํ๋ฉฐ, ๋ค์๊ณผ ๊ฐ์ ์ฅ์ ์ ๊ฐ์ง๋๋ค๋์ ํฌ๊ธฐ ์กฐ์ : ๋ฐํ์์ ํฌ๊ธฐ๋ฅผ ์ ์ฐํ๊ฒ ๋ณ๊ฒฝ ๊ฐ๋ฅ๋ด์ฅ ์๊ณ ๋ฆฌ์ฆ ์ ๊ณต: ์ ๋ ฌ, ๊ฒ์ ๋ฑ์ ์๊ณ ๋ฆฌ.. 2025. 5. 28. [Java] Math, Random, Arrays ์ ํธ ํด๋์ค ์์ ์ ๋ฆฌ! ๋ชฉ์ฐจ Java๋ ์ซ์ ๊ณ์ฐ, ๋์ ์์ฑ, ๋ฐฐ์ด ์กฐ์ ๋ฑ ๋ค์ํ ์ํฉ์์ ์ฌ์ฉํ ์ ์๋ ์ ํธ๋ฆฌํฐ ํด๋์ค๋ฅผ ์ ๊ณตํฉ๋๋ค.๊ทธ์ค์์๋ ๊ฐ์ฅ ์์ฃผ ์ฌ์ฉํ๋ ํด๋์ค๊ฐ ๋ฐ๋ก Math, Random, Arrays์ ๋๋ค. ์ด๋ฒ ๊ธ์์๋ ์ด ์ธ ๊ฐ์ง ์ ํธ ํด๋์ค์ ์ฃผ์ ๊ธฐ๋ฅ๊ณผ ์ฌ์ฉ๋ฒ์ ํ๋์ ์ ๋ฆฌํด ๋ณด๊ฒ ์ต๋๋ค.๐ Math ํด๋์คMath ํด๋์ค๋ ์ํ ๊ด๋ จ ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ์ ์ (static) ์ ํธ๋ฆฌํฐ ํด๋์ค์ ๋๋ค.๋ชจ๋ ๋ฉ์๋๋ ์ธ์คํด์ค๋ฅผ ์์ฑํ์ง ์๊ณ ๋ฐ๋ก ์ฌ์ฉํ ์ ์์ด์.int max = Math.max(10, 20);double sqrt = Math.sqrt(16);double pow = Math.pow(2, 3); ์ฃผ์ ๋ฉ์๋๋ฉ์๋์ค๋ช ์์ Math.abs(x)์ ๋๊ฐMath.abs(-5) → 5Math.max(a, .. 2025. 5. 27. [Java] Wrapper ํด๋์ค - ๊ธฐ๋ณธํ์ ๊ฐ์ฒด์ฒ๋ผ! ๋ชฉ์ฐจ Java๋ ๊ธฐ๋ณธํ(primitive type)๊ณผ ์ฐธ์กฐํ(reference type)์ ๋ช ํํ ๊ตฌ๋ถํฉ๋๋ค.ํ์ง๋ง ์ปฌ๋ ์ ์ด๋ ์ ๋ค๋ฆญ์ฒ๋ผ ๊ฐ์ฒด ์ค์ฌ์ผ๋ก ์ค๊ณ๋ Java์ ๊ตฌ์กฐ ์์์๋ ๊ธฐ๋ณธํ๋ง์ผ๋ก๋ ๋ถ์กฑํ ๋๊ฐ ๋ง์ต๋๋ค. ์ด๋ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ฐ๋ก Wrapper ํด๋์ค์ ๋๋ค. ์ด๋ฒ ๊ธ์์๋ Wrapper ํด๋์ค์ ๊ฐ๋ , ๋ณํ(๋ฐ์ฑ/์ธ๋ฐ์ฑ), ๊ทธ๋ฆฌ๊ณ ํ์ฉ๋ฒ๊น์ง ๊น๋ํ๊ฒ ์ ๋ฆฌํด ๋ณด๊ฒ ์ต๋๋ค.๐ Wrapper ํด๋์ค๋?Wrapper ํด๋์ค๋ ๊ธฐ๋ณธํ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ฒด๋ก ํฌ์ฅํ๋ ํด๋์ค์ ๋๋ค.์๋ฅผ ๋ค์ด, int ๊ฐ์ ๊ฐ์ฒด๋ก ๋ค๋ฃจ๊ณ ์ถ๋ค๋ฉด Integer๋ฅผ ์ฌ์ฉํฉ๋๋ค.๊ธฐ๋ณธํWrapper ํด๋์คbooleanBooleanbyteBytecharCharactershortShortintIntegerlongLongfloatFloa.. 2025. 5. 21. ์ด์ 1 2 3 ๋ค์ ๋ฐ์ํ