java15 [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. [Java] ์์ธ ์ฒ๋ฆฌ ์์ ์ ๋ณต โก : throw, throws์ ์ฌ์ฉ์ ์ ์ ์์ธ ํด๋์ค ๋ชฉ์ฐจ ํ๋ก๊ทธ๋จ์ ๋ ๊ฒฌ๊ณ ํ๊ฒ ๋ง๋ค๊ธฐ ์ํด์๋ ๋จ์ํ ์์ธ๋ฅผ ์ก๋ ๊ฒ์ ๋์ด, ์์ธ๋ฅผ ์ ๊ทน์ ์ผ๋ก ํ์ฉํ๊ณ ์ค๊ณํ ์ค ์์์ผ ํฉ๋๋ค. ๊ฐ๋ฐ์๊ฐ ์ง์ ์์ธ๋ฅผ ๋ค๋ฃจ๊ณ ์ํฉ์ ๋ง๋ ์ปค์คํ ์์ธ๋ฅผ ๋ง๋๋ ๊ฒ์ ์ค๋ฌด์์ ๋งค์ฐ ์ค์ํ ๊ธฐ์ ์ ๋๋ค. ์ด๋ฒ ๊ธ์์๋ throw์ throws ํค์๋๋ฅผ ํตํ ์์ธ ์ ์ด ๋ฐฉ๋ฒ๊ณผ ์ฌ์ฉ์ ์ ์ ์์ธ ํด๋์ค ์์ฑ ๋ฐฉ๋ฒ์ ๋ํด ์์ธํ ์์๋ณด๊ฒ ์ต๋๋ค.๐ท throw์ throws ํค์๋throw๋?throw๋ ์์ธ ๊ฐ์ฒด๋ฅผ ๋ช ์์ ์ผ๋ก ๋ฐ์์ํค๋ ํค์๋์ ๋๋ค.ํน์ ์กฐ๊ฑด์ด ์ถฉ์กฑ๋์ง ์์์ ๋ ํ๋ก๊ทธ๋จ์ ํ๋ฆ์ ์ค๋จํ๊ณ ์์ธ ์ฒ๋ฆฌ ๋ก์ง์ผ๋ก ์ ์ด๋ฅผ ๋๊ธฐ๋ ๋ฐ ์ ์ฉํฉ๋๋ค.public class ThrowExample { public static void main(String[] args) {.. 2025. 5. 17. [Java] ์์ธ ์ฒ๋ฆฌ ์์ ์ ๋ณต โ : ๊ฐ๋ ๋ถํฐ try-catch๊น์ง ๋ชฉ์ฐจ ํ๋ก๊ทธ๋จ์ ๊ฐ๋ฐํ๋ค ๋ณด๋ฉด ์์์น ๋ชปํ ์ํฉ์ด ๋ฐ์ํ๊ธฐ ๋ง๋ จ์ ๋๋ค. ์ฌ์ฉ์๊ฐ ์๋ชป๋ ์ ๋ ฅ์ ํ๊ฑฐ๋, ๋คํธ์ํฌ ์ฐ๊ฒฐ์ด ๋๊ธฐ๊ฑฐ๋, ํ์ผ์ด ์กด์ฌํ์ง ์๋ ๋ฑ ๋ค์ํ ๋ฌธ์ ๊ฐ ์๊ธธ ์ ์์ฃ . ์๋ฐ์์๋ ์ด๋ฐ ์์ธ ์ํฉ์ ํจ๊ณผ์ ์ผ๋ก ๋ค๋ฃจ๊ธฐ ์ํ ์์ธ ์ฒ๋ฆฌ(Exception Handling) ๋ฉ์ปค๋์ฆ์ ์ ๊ณตํฉ๋๋ค.์์ธ ์ฒ๋ฆฌ๋ฅผ ์ํ๋ฉด ํ๋ก๊ทธ๋จ์ด ์ค๋จ๋์ง ์๊ณ , ์ฌ์ฉ์์๊ฒ ์น์ ํ ๋ฉ์์ง๋ฅผ ๋ณด์ฌ์ฃผ๋ฉฐ, ๋ฌธ์ ์ ์์ธ์ ์ถ์ ํ๊ธฐ ์ฌ์ด ์ฝ๋๋ฅผ ์์ฑํ ์ ์์ด์. ์ค๋์ ์๋ฐ ์์ธ ์ฒ๋ฆฌ์ ๊ธฐ๋ณธ ๊ฐ๋ ๊ณผ ๊ตฌํ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด๊ฒ ์ต๋๋ค.๐ฅ ์์ธ๋ ๋ฌด์์ธ๊ฐ?์์ธ(Exception)๋ ํ๋ก๊ทธ๋จ ์คํ ์ค์ ๋ฐ์ํ๋ ์๊ธฐ์น ์์ ์ด๋ฒคํธ๋ก, ํ๋ก๊ทธ๋จ์ ์ ์์ ์ธ ํ๋ฆ์ ๋ฐฉํดํฉ๋๋ค. ์๋ฌ(Error) vs ์์ธ(Exception)์๋ฌ(Er.. 2025. 5. 16. ์ด์ 1 2 3 ๋ค์ ๋ฐ์ํ