try - catch

  • Java의 try - catch 와 비슷하다. 하지만 표현식으로 사용할 수 있어서 변수등에 값을 할당 할 수 있다.

  • 정상적인 케이스에는 try 값이, exception 이 발생하면 catch 값이 할당된다.

  • try, catch 는 { } 의 마지막 줄의 값을 반환한다.

  • Java 와 마찬가지로 finally 도 제공하지만 optional 이다.

//java
String value = "test"

int parsedInt;

try {
    parsedInt = Integer.parseInt(value);
} catch (NumberFormatException e) {
    e.printStactTrace();
    parsedInt = -1;
}

System.out.println(parsedInt);  // -1
//kotlin
//표현식으로서의 사용
val value = "test"

val parsedInt: Int? = try {
    value.toInt()
} catch (e: NumberFormatException) {
    -1
}

println(parsedInt)   // -1

Last updated