본문 바로가기
My Image
반응형

프로그래밍/kotiln4

람다로 프로그래밍(5장) 람다식 또는 람다 기본적으로 다른 함수에 넘길 수 있는 작은 코드 조각 람다를 사용하면 쉽게 공통 코드 구조를 뽑아낼 수 있음 함수를 값처럼 다루는 접근 방법 무명 클래스의 역할을 대신 함 람다는 함수에 인자로 넘어갈때 정의해서 바로 사용함 실행시점의 코틀린 람다 호출은 아무 비용도 들지 않는다 람다의 사용처 컬렉션 처리 자바 라이브러리에 람다 함께 사용 수신 객체 지정 람다 람다 소개 : 코드 블록을 함수 인자로 넘기기 컬레션 처리에서 람다 없이 자바에서 처리하는 방법 data class Person(val name: String, val age: Int) /* Java */ fun findTheOldest(people: List) { var maxAge = 0 var theOldest: Person?.. 2023. 2. 27.
클래스, 객체, 인터페이스(4장) 코틀린 인터페이스 fun main(arg:Array){ val button = Button() button.showOff() button.setFocus(true) button.click() } interface Clickable { //interface 키워드로 선언 fun click() //추상메서드 fun showOff() = println("I'm clickable!") //구현이 있는 메서드(디폴트 메서드) *선택 } interface Focusable { fun setFocus(b: Boolean) = println("I ${if (b) "got" else "lost"} focus.") //디폴트 메서드 *선택 fun showOff() = println("I'm focusable!") //Cl.. 2023. 2. 19.
함수의 정의와 호출(3장) 코틀린에서 컬렉션 만들기 fun main(arg:Array){ val set = hashSetOf(1, 7, 53) val list = arrayListOf(1, 7, 53) val map = hashMapOf(1 to "one", 7 to "seven", 53 to "fifty-three") val strings = listOf("first", "second", "fourteenth") val numbers = setOf(1, 14, 2) println(set.javaClass) println(list.javaClass) println(map.javaClass) println(strings.last()) //마지막 원소 println(numbers.max()) //최대값 } 코틀린이 자신만의 컬렉션 기.. 2023. 2. 5.
코틀린이란 무엇이며 왜 필요한가? (1장) 1. 코틀린은 무엇인가? 코틀린은 자바 플랫폼에서 돌아가는 새로운 프로그래밍임 코틀린은 간결하고 실용적이며, 자바 코드와의 상호운용성이 좋음 또, 자바와 동일한 성능을 발휘함 이 말은 즉, 자바가 쓰이는 곳(서버 개발, 안드로이드 앱 개발 등등)에서 사용이 가능하다. 2. 코틀린의 주요 특성 정적타입의 언어 코틀린은 자바와 동일한 정적 타입 지정 언어 여기서 동적 타입 지정이란? 모든 프로그램 구성요서 타입을 컴파일 시점에 인지하여 프로그램 안에서 객체의 필드나 메소드를 사용할 때마다 컴파일러가 타입을 검증 할 수 있다는 뜻임 정적타입의 반대인 동적타입 언어인 구루비나 Jruby 는 타입 관계없이 모든 값을 변수에 넣을 수 있고, 메소드, 필드 접근에 대한 검증이 실행시점이 일어난다. 하지만 이름을 잘못.. 2023. 1. 15.
반응형