본문 바로가기

코틀린53

[Kotlin in Action] 3.2 함수를 호출하기 쉽게 만들기 다음 코드의 joinToString 함수는 컬렉션의 원소를 StringBuilder의 뒤에 덧붙인다. 이때 원소 사이에 구분자를 추가하고, StringBuilder의 맨 앞과 맨 뒤에는 접두사와 접미사를 추가한다.fun joinToString( collection: Collection, separator: String, prefix: String, postfix: String): String { val result = StringBuilder(prefix) for ((index, element) in collection.withIndex()) { if (index > 0) result.append(separator) result.append(el.. 2025. 3. 14.
[Kotlin in Action] 3.1 코틀린에서 컬렉션 만들기 3.1 코틀린에서 컬렉션 만들기코틀린은 자체 컬렉션 기능을 제공하지 않고, 자바의 컬렉션을 활용한다.하지만, 코틀린에서는 자바보다 더 많은 기능을 쓸 수 있다.예를 들어, 리스트의 마지막 원소를 가져오거나 수로 이뤄진 컬렉션에서 최댓값을 찾을 수 있다.>>> val strings = listOf("first", "second", "fourteenth")>>> println(strings.last()) // 리스트의 마지막 원소fourteenth>>> val numbers = setOf(1, 14, 2)>>> println(numbers.max()) // 리스트의 최댓값14  (다음 섹션부터 자바 클래스에 없는 메소드를 코틀린이 어디에 정의하는지 살펴보자) 2025. 3. 14.
[Kotlin in Action] 2.5 코틀린 예외 처리 코틀린의 기본 예외 처리 구문은 자바와 비슷하다.다만, 자바와 달리 코틀린의 throw는 식이므로 다른 식에 포함될 수 있다.val percentage = if (number in 0..100) number else throw IllegalArgumentException("value must be between 0 and 100: $number")이 예제에서는 조건이 거짓이면 변수가 초기화되지 않는다. 2.5.1 try, catch, finallyfun readNumber(reader: BufferedReader): Int? { // 함수가 던질 수 있는 예외를 명시할 필요가 없다. try { val line = reader.readLine() .. 2025. 3. 14.
[Kotlin in Action] 2.4 대상을 이터레이션: while과 for 루프 2.4.1 while 루프코틀린에는 while과 do-while 루프가 있다. 두 루프의 문법은 자바와 다르지 않다.while (조건) { // ...}do { // ...} while (조건) 2.4.2 수에 대한 이터레이션: 범위와 수열코틀린에서는 가장 흔한 용례인 범위 문법을 지원한다.보통은 정수 등의 숫자 타입 두 값이며, .. 연사자로 시작 값과 끝 값을 연결해서 범위를 만든다. (양 끝 값을 포함)val oneToTen = 1..10 // 양 끝 값을 포함하므로 1부터 10까지의 숫자들이다. 역방향으로 증가 값을 갖고 범위 이터레이션을 하는 방법은 아래와 같다.for (i in 100 downTo 1 step 2) { print(i)}// 결과: 100, 98, 96, ... .. 2025. 3. 14.
[Kotlin in Action] 2.3 선택 표현과 처리: enum과 when 코틀린의 when은 자바의 switch를 대치하되 훨씬 더 강력하다. 2.3.1 enum 클래스 정의enum class Color { RED, ORANGE, YELLOW, GREEN, BLUE, INDIGO, VIOLET}코틀린에서 enum은 소프트 키워드다.소프트 키워드(soft keyweord)란?소프트 키워드는 특정 상황에서는 키워드로 작동하지만, 다른 문맥에서는 일반 식발자로 사용할 수 있는 단어. 예를 들어, enum은 함수나 변수명으로 사용할 수 있다. (when, class는 안된다)코틀린의 소프트 키워드 목록: by, file, catch, finally, constructor, set, get, init, where 자바와 마찬가지로 enum은 단순히 값만 열거하는 존재가 아니다. .. 2025. 3. 14.