목록Kotlin (2)
Dev.
1. Java 의 Switch-case 구문 //in java int val_ = 0; switch(val_){ case 1: System.out.print("print 1"); break; case 2: System.out.print("print 2"); break; default: System.out.print("default"); break; } 위 와 같은 switch-case 분기문을 자바에서 꽤 자주 사용 하였을 것 이다. switch-case 의 최대 단점으로 생각 했던 것 은 - 조건 당 걸리는 break 가 누락 된다면, 의도치 않은 아래의 case 까지 경유 하는 부분. (이로 인해서 간단한 소스코드 에서는 별 문제가 없겠지만, 거대한 소스일 경우 찾기 힘들정도의 에러를 뱉어낼 수 있다..
//1. 클래스 생성과 동시의 변수 초기화 val index = 1 //2. lateinit property 사용의 예 lateinit var model: QuizDetailViewModel //3. lazy property 사용의 예 val answer: MutableLiveData by lazy { MutableLiveData() } 위 코드의 1번 상황은 재 접근 및 재 사용 시 빠르게 접근하여 메모리,성능적 이점을 확보할 수 있다. 하지만 1회성 변수, 다시 사용하지 않을 변수 등 의 상황에서 생성과 동시의 초기화를 하면 메모리,성능적 손해를 볼 수 있다. 아래는 위 의 상황이 아닌 늦은 초기화를 지원해주는 property 에 대한 설명이다. 1. lateinit property 정리하자면 Non..