10분 코틀린 기초떼기
아직 코틀린 모르는 당신을 위한 10분 벼락치기
프로그래밍 언어의 기본 자료형이나 배열등은 설명하지 않습니다. 다른 언어 하신 분들이 코틀린에 적응할수 있게 하기 위해 작성했습니다 코틀린을 모르는 사람용이니 알아듣기 쉽게 의역한 부분이 있습니다.
1. 변수선언
💭 타입 없이 선언
val a = 1 // 값 변경 X
var b = 2 // 값 변경 O
💭 타입 있이 선언
val a : Int = 1 // 값 변경 X
var b : Int= 2 // 값 변경 O
💭 Null 허용 선언
코틀린은 기본적으로 NotNull 타입입니다.
val a : Int? = null
val b : Int? = 12
2. 조건문
💭 if 문
if (a > 0) println("a는 0보다 크다"
else println("a는 0보다 작다")
💭 when 문
switch
문을 해본사람이면 익숙
when (a) {
1 -> println("a 는1")
2 -> println("a 는 2")
else -> println("a는 1도 2도 아니다")
}
대체 삼항 연산자
?
를 nullable로 쓰기때문에 삼항연산자가 없다
val a: Int = if(true) 1 else 2
3. 반복문
온갖 언어에서 사용하는 방식의 반복문을 지원한다
💭 for
for (i in 1..10) {
println(i)
}
for(i in 1 until 10){
println(i)
}
for(i in 10 downTo 1){
println(i)
}
for(i in 1..10 step 1){
println(i)
}
for (i in arrayListOf(1, 2, 3)) {
println(i)
}
for (i in 1..10) {
print(i)
}
💭 while
while (true) {
break
}
4. 자바와 다른 객체 고유 기능
💭 with
Non-null입니다. with는 블록내부 결과를 반환합니다
with(names) {println("이름은 $this 입니다.")}
💭 also
also는 it을 그대로 반환합니다
names.also {println("이름은 $it 입니다.")}
💭 apply
input == output입니다
names.apply { println("input을 사용하지 않도록 합니다") }
💭 let
Null이 아닌경우 실행됩니다.
names.let { println("이름은 $it 입니다.") }
💭 run
names.run { println("이름은 $this 입니다.") }
5. NULL처리
💭 ? , ?:
names
?.let { println("이름이 있다") }
?: println("이름이 없다")
💭 as
val names: String? = null
val toInt: Int = names as? Int ?: 0;
💭 Not-null 강조
val names: String = "junny"!!
6. 함수 생성
(인자...) -> 응답타입 으로 선언할 수 있다
val func: (Int, Int) -> Int = { a, b -> a + b }
println(func(1, 2))
7. 클래스
class Check(
private var a: String,
private val b: Int,
private val c: LocalDateTime = LocalDateTime.now()
){
init {
require(a.isNotBlank()) { "a는 필수값입니다." }
}
}
class Check (
private val a: String?,
) {
private val d: String = a+"b"
}
Last updated