Enum에 대해서
상수를 정의할 때 final static String 과 같은 방식으로 상수를 정의한다. 그것을 개선하기 나온 것이 enum class다. Enum의 장점 1. IDE 지원 : 동완성, 오타검증, 텍스트 리팩토링 등등 2. 허용가능한 값을 제한할 수 있다. 3. 리팩토링시 변경범위가 최소화된다. C/C++의 경우는 Enum이 결국 int 값이지만, Java의 경우는 Class이기 때문에 더 많은 장점이 있다. - 데이터들의 연관관계 표현 Enum을 사용하지 않으면 직접 메소드에서 각 값을 매칭해서 리턴해야 했다. 예를 들면 ("Y","true","1"), ("N","false","0") Enum에서는 표현할 수 있다. enum Enum{ Y("1", "true"), N("0", "false"); priv..
코틀린에서 Sequence와 SAM
코틀린에서 Sequence란? 사용법 val list = listOf("one","two","three") val sequenceFromList = list.asSequence() val sequence = sequenceOf("four", "three", "two", "one")Collections 확장 함수의 경우 각 확장 함수를 호출할 때마다 새로운 Collection이 생성되어 전환된다. val list = listOf(1, 2, 3) // [1, -2, 3] 생성 val maxOddSquare = list .map{ it * it } // [1, 4, 9] 생성 .filter { it % 2 == 1 } // [1, 9] 생성 .max()총 3개의 intermediate collection이 생..