Deferred란 Deferred는 직역하면 연기라는 뜻을 가진다. "결과값 수신을 연기한다"라는 뜻인데, 이는 미래의 어느 시점에 결과값이 올 것을 뜻한다. Deferred의 의미와 같이 "Deferred는 결과값을 수신하는 비동기 작업" 이라고 정의될 수 있다. Deferred는 Job이다. public interface Deferred : Job { public suspend fun await(): T public val onAwait: SelectClause1 .. } Deferred는 결과가 있는 비동기 작업을 수행하기 위해 결과 값이 없는 Job을 확장하는 인터페이스이다. 즉, Deferred는 Job이며, 이로 인해 Deferred는 Job의 모든 특성을 갖는다. 8번 글이었던 Job의 상태..
1. LocalTime 만들기 객체 생성 정적 메서드를 이용하여 LocalTime 인스턴스를 만든다. /* 직접 지정하여 만들기 */ val time: LocalTime = LocalTime.of(19, 30, 20) /* String을 LocalTime으로 만들기 */ val timeParse: LocalTime = LocalTime.parse("19:30:20") /* 현재 시간을 LocalTime으로 만들기 */ val timeNow: LocalTime = LocalTime.now() 2. LocalTime에서 값 읽기 LocalTime는 시간 값을 읽는 여러 메서드를 제공한다. LocalTime에서 직접 변수에 접근하여 읽는 방법 TemporalField를 이용하여 읽는 방법 val time: L..
목표 Stack의 특징을 익힌다. Stack의 사용법과 구현을 익힌다. 개요 Stack은 LIFO(Last In First Out)의 특징을 가지는 자료 구조이다. 즉, 맨 마지막에 들어온 값이 가장 먼저 나가는 자료 구조이다. Kotlin에서는 Stack을 사용하기 위에 JCF의 Stack을 가져와 사용한다. Stack의 상속구조는 조금 복잡해서 List 위쪽(List가 확장하는 인터페이스)은 간소하게 표현했다. 생성 Stack의 생성은 간단하다. Stack은 클래스이기 때문에, 생성자를 이용해 생성할 수 있다. val stack: Stack = Stack() 조작 Stack의 조작 방법은 간단하다. Stack 클래스에서는 총 3가지의 Stack 연산을 지원한다. Stack에서 Vector Class를..