[JAVA] Collections Framework..2
JAVA/Java Programming 2020. 3. 4. 02:56

https://ybdeveloper.tistory.com/43 [JAVA] Collections Framework...1 κ°œμš” μ»¬λ ‰μ…˜ ν”„λ ˆμž„μ›Œν¬μ— λŒ€ν•œ μ „λ°˜μ μΈ 이해 Map, Set, List 차이점에 λŒ€ν•œ 이해 "μ–΄λ–€ 상황에 μ–΄λ–€ 클래슀λ₯Ό μ‚¬μš©ν•΄μ•Ό ν•˜λŠ”κ°€?" 각 ν΄λž˜μŠ€κ°€ 가지고 μžˆλŠ” λ©”μ†Œλ“œ 보단, μ „λ°˜μ μΈ 이해λ₯Ό μ€‘μ μœΌλ‘œ μ§„ν–‰ν•œλ‹€. Col.. ybdeveloper.tistory.com Set μΈν„°νŽ˜μ΄μŠ€ Set μΈν„°νŽ˜μ΄μŠ€λŠ” 쀑볡을 ν—ˆμš©ν•˜μ§€ μ•Šκ³  μ €μž₯μˆœμ„œκ°€ μœ μ§€λ˜μ§€ μ•ŠλŠ” μ»¬λ ‰μ…˜ 클래슀λ₯Ό κ΅¬ν˜„ν•˜λŠ”λ° μ‚¬μš©λ©λ‹ˆλ‹€. Set μΈν„°νŽ˜μ΄μŠ€λ₯Ό κ΅¬ν˜„ν•œ ν΄λž˜μŠ€λ‘œλŠ” HashSet, TreeSet 등이 μžˆμŠ΅λ‹ˆλ‹€. HashSet HashSet은 Set μΈν„°νŽ˜μ΄μŠ€λ‘œ κ΅¬ν˜„ν•œ κ°€μž₯ λŒ€ν‘œμ μΈ μ»¬λ ‰μ…˜μ΄λ©°, Set μΈν„°νŽ˜μ΄μŠ€μ˜ νŠΉμ§•λŒ€λ‘œ H..

[JAVA] Collections Framework...1
JAVA/Java Programming 2020. 3. 2. 22:12

Collections Framework μ»¬λ ‰μ…˜ ν”„λ ˆμž„μ›μ΄λž€, '데이터 ꡰ을 μ €μž₯ν•˜λŠ” ν΄λž˜μŠ€λ“€μ„ ν‘œμ€€ν™”ν•œ 섀계'λ₯Ό λœ»ν•©λ‹ˆλ‹€. μ»¬λ ‰μ…˜ ν”„λ ˆμž„μ›μ€ μ»¬λ ‰μ…˜μ„ λ‹€λ£¨λŠ” 데 ν•„μš”ν•œ λ‹€μ–‘ν•˜κ³  ν’λΆ€ν•œ ν΄λž˜μŠ€λ“€μ„ μ œκ³΅ν•˜κΈ° λ•Œλ¬Έμ— 개발의 짐을 μƒλ‹Ήνžˆ λœμ–΄ μ£Όκ³  있으며, λ˜ν•œ μΈν„°νŽ˜μ΄μŠ€μ™€ λ‹€ν˜•μ„±μ„ μ΄μš©ν•œ 객체지ν–₯적 섀계λ₯Ό 톡해 ν‘œμ€€ν™”λ˜μ–΄ 있기 λ•Œλ¬Έμ— μž¬μ‚¬μš©μ„±μ΄ 높은 μ½”λ“œλ₯Ό μž‘μ„±ν•  수 μžˆλ‹€λŠ” μž₯점이 μžˆμŠ΅λ‹ˆλ‹€. μ»¬λ ‰μ…˜ ν”„λ ˆμž„μ›μ—λŠ” μ»¬λ ‰μ…˜ 그룹을 크게 3가지 νƒ€μž…μ΄ μ‘΄μž¬ν•œλ‹€κ³  μΈμ‹ν•˜κ³  3개의 μΈν„°νŽ˜μ΄μŠ€λ₯Ό μ •μ˜ν•˜μ˜€μŠ΅λ‹ˆλ‹€. 그리고 μΈν„°νŽ˜μ΄μŠ€ List와 Set의 κ³΅ν†΅λœ 뢀뢄을 λ‹€μ‹œ λ½‘μ•„μ„œ μƒˆλ‘œμš΄ μΈν„°νŽ˜μ΄μŠ€μΈ Collectionsλ₯Ό μΆ”κ°€λ‘œ μ •μ˜ν•˜μ˜€μŠ΅λ‹ˆλ‹€. μ»¬λ ‰μ…˜ ν”„λ ˆμž„μ›μ—λŠ” μ„Έ κ°€μ§€μ˜ μΈν„°νŽ˜μ΄μŠ€μ— 뿌리λ₯Ό 두고 μžˆλŠ” λ‹€μ–‘ν•œ ν΄λž˜μŠ€λ“€μ΄ 쑴재..

[Kotlin] μ½”ν‹€λ¦°μ΄λž€?
μ•ˆλ“œλ‘œμ΄λ“œ 2020. 2. 29. 22:56

κ°œμš” Kotlin에 λŒ€ν•œ 배경지식을 μ΄ν•΄ν•œλ‹€. Kotlin의 μž₯점에 λŒ€ν•΄ μ΄ν•΄ν•œλ‹€. Kotlin의 μ „λ°˜μ μΈ 아이디어에 λŒ€ν•΄ μ΄ν•΄ν•œλ‹€. Kotlin 코틀린은 IntelliJ IDEAλΌλŠ” 톡합 개발 ν™˜κ²½μœΌλ‘œ 유λͺ…ν•œ JetBrainsμ—μ„œ κ°œλ°œν•œ μ–Έμ–΄μž…λ‹ˆλ‹€. κ΅¬κΈ€μ˜ μ•ˆλ“œλ‘œμ΄λ“œ μŠ€νŠœλ””μ˜€λ„ IntelliJ IDEA기반이며 μ½”ν‹€λ¦° μ–Έμ–΄λ₯Ό κ³΅μ‹μ μœΌλ‘œ μ§€μ›ν•˜κ³  μžˆμŠ΅λ‹ˆλ‹€. 코틀린은 JVM,JS,Native μƒμ—μ„œ 싀행될 수 있으며, JVM 기반의 코틀린은 μžλ°” μ—ν”Œλ¦¬μΌ€μ΄μ…˜, μ•ˆλ“œλ‘œμ΄λ“œ μ—ν”Œλ¦¬μΌ€μ΄μ…˜μ€ λ§Œλ“€ 수 있으며 JS 기반의 코틀린은 ν’€μŠ€νƒ μ›Ή 개발, Native 기반의 코틀린은 LLVM 컴파일러λ₯Ό 톡해 νŠΉμ • ν”Œλž«νΌμ„ νƒ€κΉƒμœΌλ‘œ ν•œ κΈ°κ³„μ˜ μ½”λ“œλ₯Ό λ§Œλ“€ 수 μžˆμŠ΅λ‹ˆλ‹€. μ½”ν‹€λ¦°μ˜ μž₯점 μžλ£Œν˜• 였λ₯˜λ₯Ό 미리 μž‘μ„ 수 μžˆλŠ” 정적 μ–Έ..

[JAVA] 가바지 컬렉터
JAVA/μ•Œμ•„λ‘λ©΄ 쒋을 지식 2020. 2. 28. 01:49

κ°œμš” 가비지 컬렉터가 ν•„μš”ν•œ 이유 가비지 μ»¬λ ‰μ…˜μ— λŒ€ν•œ μ „λ°˜μ μΈ 이해 가비지 μ»¬λ ‰μ…˜μ˜ λ™μž‘ 방법 https://ybdeveloper.tistory.com/36 [JAVA] JVMμ΄λž€ λ¬΄μ—‡μΌκΉŒ? JVMμ΄λž€? μžλ°” 가상 λ¨Έμ‹ (Java Virtual Machine)의 μ•½μžλ‘œμ„œ, μ§μ—­ν•˜μžλ©΄ 'μžλ°”λ₯Ό μ‹€ν–‰ν•˜κΈ° μœ„ν•œ 가상 기계'라고 ν•  수 μžˆμŠ΅λ‹ˆλ‹€. '가상 기계'λŠ” SW둜 κ΅¬ν˜„λœ HWλ₯Ό λœ»ν•˜λŠ” 넓은 의미의 μš©μ–΄μ΄λ©°, 컴퓨터 μ„±λŠ₯이 ν–₯.. ybdeveloper.tistory.com 가비지 컬렉터가 ν•„μš”ν•œ 이유? Cλ‚˜ C++ Languageλ₯Ό μ‚¬μš©ν•  λ•ŒλŠ”, OS 레벨의 λ©”λͺ¨λ¦¬μ— 직접 μ ‘κ·Όν•˜κΈ° λ•Œλ¬Έμ— free()λΌλŠ” λ©”μ„œλ“œλ₯Ό ν˜ΈμΆœν•˜μ—¬ ν• λ‹Ήλ°›μ•˜λ˜ λ©”λͺ¨λ¦¬λ₯Ό λͺ…μ‹œμ μœΌλ‘œ κ°œλ°œμžκ°€ ν•΄μ œν•΄μ£Όμ–΄μ•Ό ν•©λ‹ˆλ‹€. λ§Œμ•½ 그렇지 μ•ŠμœΌλ©΄ λ©”λͺ¨λ¦¬..

[JAVA] '=='κ³Ό 'equals()'의 μ°¨μ΄λŠ” λ¬΄μ—‡μΌκΉŒ?
JAVA/μ•Œμ•„λ‘λ©΄ 쒋을 지식 2020. 2. 27. 21:51

==? equals()? 기본적으둜 이 λ‘˜μ€ μ–‘μͺ½μ— μœ„μΉ˜ν•œ κ°’ ν˜Ήμ€ 객체λ₯Ό λΉ„κ΅ν•œ 값을 boolean type으둜 λ°˜ν™˜ν•œλ‹€λŠ” 곡톡점을 κ°€μ§‘λ‹ˆλ‹€. ν•˜μ§€λ§Œ μ •μž‘ String μ°Έμ‘°λ³€μˆ˜μ— 같은 κ°’μœΌλ‘œ μ΄ˆκΈ°ν™” μ‹œμΌœ λ†“μ€μ±„λ‘œ, '==' μ—°μ‚°μžλ₯Ό μ΄μš©ν•˜μ—¬ 비ꡐλ₯Ό 해보면 늘 falseλ₯Ό λ°˜ν™˜ν•˜κ²Œ λ©λ‹ˆλ‹€. μ΄λŸ¬ν•œ κ²°κ³Όλ₯Ό 봀을 λ•Œ == μ—°μ‚°μžμ™€ equals() λ©”μ„œλ“œ μ‚¬μ΄μ—λŠ” 큰 차이점이 μžˆλŠ” 것이 ν™•μ‹€ν•©λ‹ˆλ‹€. λ”°λΌμ„œ 성곡적인 μ½”λ“œλ₯Ό μž‘μ„±ν•˜κΈ° μœ„ν•΄μ„œλŠ” 이 λ‘˜μ˜ 차이점을 μ•Œμ•„μ•Όλ§Œ ν•©λ‹ˆλ‹€. Call By Reference, Call By Value == μ—°μ‚°μžμ™€ equals() λ©”μ„œλ“œ μ‚¬μ΄μ˜ κ°€μž₯ μ€‘μš”ν•œ 차이점을 μ•ŒκΈ° μœ„ν•΄μ„œλŠ” Call By Reference(μ΄ν•˜ CBR), Call By Value(μ΄ν•˜ CBV) 에 λŒ€ν•΄ ν™•..