쉽게 다가가는 최신 프로그래밍: 코틀린 - 1장 코틀린 기초를 완전히 이해했나요? 다음 문제를 풀어 보세요.
문제 1 문자에 숫자(정수)를 더하면 어떻게 될까요?
fun main() {
val ch = 'a' + 20
println(ch)
for (c in "ROME") {
print(c + 3)
}
println()
}
문제 2 아래 연산 결과는 어떤 값이 나올까요? 그 이유도 설명하세요.
fun main() {
println(Byte.MAX_VALUE + 1)
println(Short.MAX_VALUE + 1)
println(Int.MAX_VALUE + 1)
println(Int.MAX_VALUE + 1L)
}
문제 3 (1) 문자열 상수를 모두 소문자로 바꾸려고 합니다. 그런데, 아래 코드에서 toLowerCase()는 deprecated 되었다고 표시됩니다. deprecated된 함수를 대체할 다른 함수를 찾아보세요. (2) 문자열 상수를 역순으로 바꾸는(Apple -> elppA) 함수도 있습니다. 이 함수를 찾아 실행시켜 보세요.
fun main() {
val s = "Apple"
println(s.toLowercase()) // toLowerCase()를 사용하면 deprecated 표시
}
문제 4 파이썬에서 3개 따옴표(triple quote)를 사용해 본 적이 있을 겁니다. 코틀린에서도 3개의 쌍따옴표(double quote)는 파이썬과 사용 방법이 거의 같습니다. 아래 코드를 실행하기 전에 눈으로 먼저 코드를 이해하고 출력을 예측해 보기 바랍니다.
fun main() {
println(fruit("Apple", "Malus domestica", 48))
}
fun fruit(name:String, sciName:String, calories:Int) = """
{
name: $name,
scientific name: $sciName,
calories: $calories
}"""
문제 5 2개의 Int 타입 변수 a와 b를 비교해, "큰 값은 a", "큰 값은 b"를 출력하려고 합니다. 아래 String template 문장을 완성하세요.
fun main() {
val a = 2; val b = 3
println("큰 값은 ${if () else }") // 미완성
}
문제 6 (프로그래밍) (1) 아래 코드를 실행하면 어떤 종류의 예외(Exception)가 발생할까요? (2) 왜 예외가 발생했나요? (3) 예외가 발생하지 않도록 아래 코드를 수정해 보세요. "12x"를 "12"로 바꾸는 건 오답입니다.
fun main() {
val s = "12x" // 소문자 x
println(s.toInt())
}
'코틀린' 카테고리의 다른 글
코틀린: in과 범위 연산 (0) | 2024.09.14 |
---|---|
1장 - 테스트에 도전해 보세요(정답 해설) (0) | 2024.09.14 |
코틀린: 널 타입과 안전 호출, 스마트 형 변환 (0) | 2024.09.04 |
코틀린: String과 CharArray (0) | 2024.09.03 |
코틀린: String의 원소 참조 - 인덱싱 (0) | 2024.09.03 |