HELLO KOTLIN!
fun main(args: Array) {
println("Hello, Kotlin!")
}
7
Slide 8
Slide 8 text
جຊͷؔ
fun add(x: Int, y: Int): Int {
fun x + y
}
fun add(x: Int, y: Int): Int = x + y
fun add(x: Int, y: Int) = x + y
8
Slide 9
Slide 9 text
NULL҆શ
class MyClass() {
fun doSomething() { … }
}
val a: MyClass = null //ίϯύΠϧΤϥʔ
val b: MyClass? = null
b.doSomething() //ίϯύΠϧΤϥʔ
9
Slide 10
Slide 10 text
WHEN
fun cases(obj: Any) {
when (obj) {
1 -> println("One")
"Hello" -> println("Greeting")
is Long -> println("Long")
!is String -> println("Not a string")
else -> println("Unknown")
}
}
10
Slide 11
Slide 11 text
֦ுؔ
fun MutableList.swap(index1: Int, index2: Int) {
val tmp = this[index1]
this[index1] = this[index2]
this[index2] = tmp
}
11
Slide 12
Slide 12 text
֦ுϓϩύςΟ
val List.lastIndex: Int
get() = size - 1
12
Slide 13
Slide 13 text
SWIFTͱҧ͏͚ͲɺࣅͯΔͱ͜Ζ͕͋Δ
// Swift
var, let
func foo(arg: Any) -> Any
class MyClass {}
var ins = MyClass()
ins.add(x: 1, y: 2)
// Kotlin
var, val
fun foo(arg: Any): Any
class MyClass {}
var ins = MyClass()
ins.add(1, 2)
13
Slide 14
Slide 14 text
SWIFTͱҧ͏͚ͲɺࣅͯΔͱ͜Ζ͕͋Δ
// SwiftͷOptional
let ins2: MyClass?
ins2?.foo()
if let ins2 = ins2 {
ins2.foo()
}
// KotlinͷNullable
val ins2: MyClass?
ins2?.foo()
if (ins2 != null) {
ins2.foo()
}
14
Slide 15
Slide 15 text
ANDROIDͰ࣮Ͳ͏ͳΔʁʛσʔλΫϥε
15
data class User(val name: String, val age: Int)
➤ getters / settersʢvarͷ߹ʣ
➤ equals
➤ hashCode
➤ toString
্هͷؔࣗಈͰ࡞ͬͯ͘ΕΔ