Dev/Kotlin 15

커니의 코틀린 - 3장 (데이터 클래스)

데이터 클래스 : 자료를 저장하는 클래스를 만드는 과정을 단순하게 하기 위해서 제공하는 특별한 클래스 코틀린 data 클래스data class Person(val name: String, val address: String) Java VO 형태 클래스public class Person { private String mName; private String mAddress; public Person(String name, String address) { this.mName = name; this.mAddress = address; } public String getName() { return mName; } public void setName(String name) { this.mName = name; } ..

Dev/Kotlin 2018.07.16

let 함수

let 함수 : 널이 될 수 있는 식을 더 쉽게 다룰 수 있다. 함수fun fileToComputer(file: String) { ...... } 실행val file: String? = "abcd" fileToComputer(file) 결과ERROR: Type mismatch: inferred type is String? but String was expected 그렇기 때문에 다음과 같이 구현해줘야 한다. - let 함수 사용 Xif (file != null) fileToComputer(file) - let 함수 사용 Ofile?.let { file -> fileToComputer(file) } 혹은 file?.let { fileToComputer(it) }

Dev/Kotlin 2018.06.21

5장 람다로 프로그래밍

코틀린 람다 적용하기 1. 일반적인 루프 사용해서 컬렉션 검색@Test fun addition_isCorrect() { val people = listOf(Person("Dev", 33), Person("Dave", 32), Person("Dori", 31)) findTheOldest(people) } data class Person(val name: String, val age: Int) // 연장자 찾기 fun findTheOldest(people: List) { var maxAge = 0 var theOldest: Person? = null for (person in people) { if (person.age > maxAge) { maxAge = person.age theOldest = perso..

Dev/Kotlin 2018.05.28

4장 - 클래스, 객체, 인터페이스

- 코틀린 인터페이스1. 추상 메소드와 구현이 있는 메소드 정의 가능.2. 클래스에서 인터페이스를 구현해서 사용할 경우, override 변경자를 꼭 사용해야 한다.class Button: Clickable { override fun click() { println("Click Button") } override fun showOff() { super.showOff() } } interface Clickable { fun click() fun showOff() = println("Clickable ShowOff") } - 코틀린의 클래스와 메소드는 기본적으로 final 속성1. 특정 클래스의 상속을 허용하기 위해서 open 변경자를 붙여야 한다.2. 오버라이드하는 메소드의 구현을 하위 클래스에서 오버라이..

Dev/Kotlin 2018.05.27