분류 전체보기
-
[Kotlin] List<out T> , MutableList<T>Kotlin 2024. 3. 16. 20:01
List 생성 시에 넣은 객체를 대체, 추가, 삭제 할 수 없다 선언 방법 : var a = listOf(1,2,3); fun main() { var a = listOf(1,2,3) println(a) a.add(4) } add 를 실행 시키면 아래와 같은 에러가 발생한다 MutableList add, remove 등 변경이 가능하고 Java 에 ArrayList 라고 생각하면 편하다 선언 방법 : var a = mutableListOf(1,2,3); fun main() { var a = mutableListOf(1,2,3) println(a) a.add(2,5) // 인덱스 2번째 위치에 5를 추가한다. println(a) } mutableList 내장함수 요소의 추가 add(데이터) add(인덱스,데..
-
[Kotlin] GenericKotlin 2024. 3. 15. 16:18
Generic 클래스나 함수에 사용하는 자료형을 외부에서 지정할 수 있는 기능 함수나 클래스를 선언할 때 고정적인 자료형 대신 실제 자료형으로 대체되는 타입 파라미터를 받아 사용하는 방법 fun genericFunc(param:T):T class GenericClass(var pref:T) 이 부분에서 특정 자료형을 할당하면 제네릭을 사용하는 모든 코드는 할당받은 자료형으로 대체되어 컴파일 된다 fun main() { UsingGeneric(A()).doShouting() UsingGeneric(B()).doShouting() UsingGeneric(C()).doShouting() doSouting(B()) } fun doSouting(t:T){ t.shout() } open class A{ open f..
-
[Kotlin] 다형성 as isKotlin 2024. 3. 15. 16:06
다형성 클래스의 상속관계에서 오는 인스턴스 호환성을 적극 활용할 수 있는 기능으로 수퍼클래스가 같은 인스턴스를 한번에 관리하거나 인터페이스를 구현하여 사용하는 코드에서도 이용됨 up-casting up-casting 은 하위 자료형을 상위 자료형에 담는다 ex ) var a: Drink = Cola() down-casting up-casting 된 인스턴스를 다시 하위자료형으로 변환하는 것을 down-casting 이라고 한다 하위 자료형은 as, is 연산자를 사용한다 - as 변수를 호환되는 자료형으로 변환해주고 ex ) a as Cola 이후로는 a 는 Cola 로 동작함 var b = a as Cola Cola 변환한 결과를 반환받아 변수에 넣을 수도 있음 - is 변수가 자료형의 호환되는지 먼저..
-
[Kotlin] 익명객체와 옵저버 패턴Kotlin 2024. 3. 12. 23:34
이벤트를 수신 할 클래스를 kotlin 에선 listener 라고 부르고 이벤트를 전달하는 함수를 callback 함수 이라고 한다. 중간에 interface 를 만들어 서로 연결 짓는 다리 역활을 하며 그 후 컬백함수가 있는 클래스를 만들어 그 이벤트를 응답한다. 아직 완벽히 이해하진 못했지만 우선 이렇게 나는 이해했다.. 더 공부해봐야겠다. 일반 클래스를 통한 옵저버 패턴 fun main(){ EventPrinter().start() } interface EventListener{ fun onEvent(count:Int) } class Counter(var listener: EventListener){ fun count(){ for(i in 1..100){ if(i % 5 == 0) listener...