java
-
[Programmers] Lv2. κ΄νΈ νμ νκΈ°(kotlin)SW Test/Programmers 2022. 9. 23. 17:36
λ¬Έμ μμ νμ΄ Stackμ μ΄μ©ν λνμ μΈ λ¬Έμ μΈ κ΄νΈ μ°ΎκΈ°μ λλ€. Stack λΌμ΄λΈλ¬λ¦¬λ kotlinμ μκΈ°μ Java Util λΌμ΄λΈλ¬λ¦¬μ ν¬ν¨λ Stackμ μ΄μ©νμλ©΄ λ©λλ€. import java.util.* class Solution { fun solution(s: String): Int { var answer: Int = 0 var tempStr = s first@ (1..s.length).forEach{ tempStr = tempStr.substring(1, tempStr.length) + tempStr.first() val stack = Stack() for(ch in tempStr){ if(stack.size == 0){ stack.add(ch) }else{ if(ch in arrayO..
-
[Kotlin] Companion Object λ?Android/Kotlin 2021. 7. 5. 23:13
μ΄ κΈμ "μ€μ¬μ±μ Google 곡μ μΈμ΄ kotlin" κ°μλ₯Ό λ£κ³ 곡λΆν λ΄μ©μ μμ±νμμ΅λλ€. Java Static ν΄λμ€ λ΄λΆμ λ©€λ² λ³μλ₯Ό μ¬μ©νκΈ° μν΄μλ ν΄λμ€λ₯Ό μμ±νκ³ μΈμ€ν΄μ€.λ³μμ ννλ‘ νΈμΆνμ¬ μ¬μ©ν μ μμ΅λλ€. μ¬λ¬ κ°μ μΈμ€ν΄μ€λ₯Ό λ§λ€ μ κ°κ° λ©€λ² λ³μκ° μ μ₯λ λ©λͺ¨λ¦¬λ₯Ό μ¬μ©νκ² λ©λλ€. νμ§λ§, λͺ¨λ μΈμ€ν΄μ€μμ 곡ν΅μ μΌλ‘ μ¬μ©νλ λ³μκ° μμ κ²½μ°μλ μ¬λ¬ κ°μ λ©λͺ¨λ¦¬λ₯Ό μ¬μ©νλ κ²μ λΉν¨μ¨μ μΌ μ μμ΅λλ€. λ°λΌμ μ΄λ₯Ό ν΄κ²°νκΈ° μν΄μλ static λ³μ, λ©μλλ₯Ό μ¬μ©νμ¬ ν΄λΉ ν΄λμ€μ λͺ¨λ μΈμ€ν΄μ€μμλ 곡ν΅μ μΌλ‘ μ¬μ©νκ² λ§λ€ μ μμ΅λλ€. class Student { public String id; public String name; public static S..
-
[Kotlin] μ κ·Όμ νμ, property, get(), set()Android/Kotlin 2021. 7. 5. 01:18
μ΄ κΈμ "μ€μ¬μ±μ Google 곡μ μΈμ΄ Kotlin" κ°μλ₯Ό λ£κ³ 곡λΆν λ΄μ©μ μμ±νμμ΅λλ€. μ κ·Όμ νμ kotlinμ private, public, protected, internal 4κ°μ§μ μ κ·Όμ νμλ₯Ό κ°μ§κ³ μμ΅λλ€. kotlinμ Javaμ λ€λ₯Έμ μ ν¨ν€μ§μλ κ΄κ³κ° μκ³ , λͺ¨λμ λν΄μλ§ μ κ·Ό μ νμ λκ³ μμ΅λλ€. private : μΈλΆ μ΄λ€ κ³³μμλ μ κ·Όν μ μμ΅λλ€. public : μΈλΆ μ΄λμλ μ§ μ κ·Όν μ μμ΅λλ€. protected : ν΄λμ€ μ μΈμμλ μ¬μ© λΆκ°, μμλ ν΄λμ€μμλ§ μ κ·Όν μ μμ΅λλ€. internal : κ°μ λͺ¨λ λ΄μμλ§ μ κ·Όν μ μμ΅λλ€. property κ°μ μ§ν₯ νλ‘κ·Έλλ°μ νΉμ§ μ€ νλμΈ μΊ‘μνλ μΈλΆλ‘λΆν° ν΄λμ€ λ΄λΆ λ³μλ₯Ό μ§μ μ κ·Όμ μ°¨λ¨ν..
-
[Kotlin] ν΄λμ€ μμ±κ³Ό μμAndroid/Kotlin 2021. 7. 4. 21:05
μ΄ κΈμ "μ€μ¬μ±μ Google 곡μ μΈμ΄ Kotlin" κ°μλ₯Ό λ£κ³ 곡λΆν λ΄μ©μ λ°νμΌλ‘ μμ±ν λ΄μ©μ λλ€. κ°μ²΄μ§ν₯ νλ‘κ·Έλλ° (Object Oriented Programming) Kotlinμ κ°μ²΄μ§ν₯ νλ‘κ·Έλλ°κ³Ό ν¨μν νλ‘κ·Έλλ° λͺ¨λ κ°λ₯ν©λλ€. κ°μ²΄μ§ν₯ νλ‘κ·Έλλ°μ΄λ μ¬λ¬ 곡ν΅μ μΌλ‘ μ¬μ©λλ μμ±λ€μ νλμ κ°μ²΄λ‘ νννμ¬ λ°μ΄ν°μ κΈ°λ₯λ€μ κ΄λ¦¬νλ νλ‘κ·Έλλ° κΈ°λ²μ λλ€. Javaμ κ°μ΄ κ°μ²΄μ§ν₯ νλ‘κ·Έλλ°μ νκΈ° μν΄μ ν΄λμ€μ μμ±κ³Ό μμνλ λ°©λ²μ λν΄ μκ°νλ €κ³ ν©λλ€. ν΄λμ€ μμ± class Student{ var id: Int = 0 var name : String = "ows" } fun main() { var obj = Student() print("${obj.id} ${obj..
-
[Java] λμμΈ ν¨ν΄(Composite ν¨ν΄)μΉ΄ν κ³ λ¦¬ μμ 2021. 5. 18. 00:45
μ΄ κΈμ "μνν μ½λ©μ¬μ κ°μ²΄μ§ν₯ λμμΈν¨ν΄ Youtube μμ"μ λ³΄κ³ μ°Έκ³ νμ¬ μμ±νμμ΅λλ€. Composite ν¨ν΄μ΄λ? Composite ν¨ν΄μ 볡μ‘ν μ€κ³λ₯Ό ν λ μ£Όλ‘ μ¬μ©νλ ν¨ν΄μΌλ‘ μ»΄ν¨ν° νμΌ μμ€ν μ μκ°νμλ©΄ λ©λλ€. μ»΄ν¨ν° νμΌ μμ€ν μμλ ν΄λ λ΄λΆμ νμΌλ λ€μ΄κ° μ μμ§λ§, ν΄λ μ체λ λ€μ΄κ° μ μμ΅λλ€. λν, νμΌκ³Ό ν΄λλ λ€λ₯Έ μ‘΄μ¬μ§λ§ κ°κ° ν¬κΈ°κ° μ‘΄μ¬νκ³ μ΄λ¦ λ°κΎΈκΈ°, μμ νκΈ° λ±κ³Ό κ°μ λͺ λ Ήμ΄λ 곡ν΅μ μΌλ‘ μ£Όμ΄μ§λλ€. μ΄μ²λΌ Composite ν¨ν΄μ ν¬ν¨λλ κ°μ²΄μ ν¬ν¨νλ κ°μ²΄κ° λμΌνκ² λ€λ€μ§ λ μ¬μ©νλ ν¨ν΄μ λλ€. Composite μ¬μ© public interface FileSystem { int getSize(); void printInfo(); } Fil..
-
[Java] λμμΈ ν¨ν΄(Mediator ν¨ν΄)Android/Java 2021. 5. 18. 00:14
Mediator ν¨ν΄μ΄λ? Mediator λ§ κ·Έλλ‘ μ€μ¬μλ‘μ, ν΄λμ€κ° λ€λ₯Έ ν΄λμ€μμ μ°κ²°μ±μ μ§μ νλ κ²μ΄ μλ μ€μ¬μλ₯Ό ν΅ν΄ μ°κ²°νλ ν¨ν΄μ λλ€. νμ¬μ μκΈμκ° λΉμλ₯Ό ν΅ν΄ λ€λ₯Έ μ§μλ€μκ² μκΈμμ μ견μ λͺ¨λμκ² μ λ¬νλ―, ν΄λμ€κ° μ§μ λ°μ΄ν°λ₯Ό λͺ¨λμκ² μΌμΌμ΄ μ λ¬νλ κ²μ΄ μλ Mediatorκ° μννλλ‘ λ§λλ ν¨ν΄μ λλ€. Mediator ν¨ν΄μ μ€λͺ νκΈ° μ μ Mediator μ¬μ©νκΈ° μ μ μ½λμ λΆνΈν¨μ μ μκ³ λλ©΄ λ μ΄ν΄νκΈ° μ½μ΅λλ€. public interface Subject { void isTimetoSubject(String type); } SubjectλΌλ μΈν°νμ΄μ€λ typeμ ν΄λΉνλ κ³Όλͺ©μ λ£λ μκ°μ΄ λ§λμ§μ λ°λΌ λ€λ₯΄κ² ꡬνλλ isTimetoSubject λ©μλ..
-
[Java] λμμΈ ν¨ν΄(Template ν¨ν΄)Android/Java 2021. 5. 17. 22:13
Template ν¨ν΄μ΄λ? λνμμ΄λΌλ©΄ PPTλ‘ λ°νν κ²½νμ μμ κ²μ λλ€. PPT λ°ν μλ£λ₯Ό μ§μ κΎΈλ©°μ λ§λλ νμλ μμ μ μκ² μ§λ§, λμμΈ κ°κ°μ΄ μλ μ¬λμκ²λ μ΄λ €μΈ μ μμ΅λλ€. μ΄ λ, λλΆλΆμ PPT ν νλ¦Ώμ κ²μνμ¬ ν νλ¦Ώμ λ΄μ©λ§ μΆκ°νλ λ°©μμΌλ‘ μλ£λ₯Ό λ§λ€ κ²μ λλ€. μ΄μ²λΌ Template ν¨ν΄μ΄λ μ λ°μ μΈ κ³Όμ κ°μ ν° νλ§ μ£Όμ΄μ§κ³ , μΈλΆμ μΈ λ©μλλ€μ μνλ μ€νμΌμ λ§κ² ꡬννλ ν¨ν΄μ λλ€. μ λ°μ μΈ κ³Όμ μμ 곡ν΅λ μ μ°¨κ° μμ κ²½μ° μ¬μ©νλ©΄ ν¨κ³Όμ μΈ ν¨ν΄μ λλ€. Template μ¬μ© public abstract class Movie { protected abstract void connectMovieServer(); protected abstract void down..
-
[Java] λμμΈ ν¨ν΄(Proxy ν¨ν΄)Android/Java 2021. 5. 14. 01:28
Proxy ν¨ν΄μ΄λ? ν΄λμ€λ₯Ό μμ± μμ κ°λ²Όμ΄ μμ μ λν λ©μλλ μ€ννλ, λ¬΄κ±°μ΄ μμ μΌ κ²½μ° λ€λ₯Έ ν΄λμ€μ λ©μλλ₯Ό μ€ννλ ν¨ν΄μ λλ€, μ¦, λ리μΈ(Proxy) μν ν μ μλ ν΄λμ€κ° κ°λ²Όμ΄ μμ μ μ€ννλ€κ° μλ²μμ λ°μ΄ν°λ₯Ό λ°λλ€λκ°, λμμ μ¬μ μμλ μ£Όμ ν΄λμ€κ° μ€ννλλ‘ ν©λλ€. Proxy ν¨ν΄μ μ¬μ©ν¨μΌλ‘μ¨ λ¬΄κ±°μ΄ μμ μ ν΄μΌν κ²½μ°μλ§ ν΄λμ€λ₯Ό μμ±νμ¬ λ©λͺ¨λ¦¬λ₯Ό ν¨μ¨μ μΌλ‘ μ¬μ©ν μ μμ΅λλ€. Proxy ν¨ν΄ μ¬μ© public interface Scorer { void multipleChoice(); void shortAnswer(); } Scorer μΈν°νμ΄μ€λ κ°κ΄μκ³Ό μ£Όκ΄μμ μ±μ ν μ μλ μ±μ κ΄μ λ»νλ μΈν°νμ΄μ€μ λλ€. κ°κ΄μμ μλμ μΌλ‘ μ λ΅μ΄ μμΌλ©΄ μ½κ² μ±μ ν ..