티스토리 뷰

 문자열 ("") 내부에 바로 변수, 표현식을 사용할 수 있는 방법이 있다면, 얼마나 편할까요? C언어에서 사용하는 형식 지정자 %d, %s 등을 쓰지 않고 바로 쓸 수 있는 방법이 코틀린에 있습니다. 🍹

현재 진행중인 챕터

예제 코드

fun main(args: Array<String>): Unit{
    val a = 10
    val b = 20

    println("a의 값은 $a") // "a의 값은 " + a // Syntactic Sugar
    println("b의 값은 $b")

    println("a + b = ${a + b}")

    println("\\\$를 쓰면 어떨까")
    println("나의 월 수익은 10,000\$다")
}

실행 결과

a의 값은 10
b의 값은 20
a + b = 30
\$를 쓰면 어떨까
나의 월 수익은 10,000$다

Process finished with exit code 0

코드 설명

 코틀린(Kotlin)에서는 간단하게 문자열 안에다가 표현식의 값을 집어넣거나 변수 이름을 넣어서 표시할 수 있습니다. 이때 사용하는 키워드가 바로 $ 키워드입니다. (python에서도 비슷하게 f-string이라는 것을 제공합니다.

2~3(번째 줄): 상수 a에 10, 살수 b에 20을 넣은 뒤, 출력해보겠습니다.

5~6: 이때 $ 키워드를 사용해서 a와 b를 바로 문자열 안에 나타내고 있습니다. 🍰

사실 이러한 것과 동일한 것이 문자열을 + 연산자와 함께 변수명과 표기하면 됩니다. 즉 "a의 값은 " + a 이런 식으로 말이죠. 그러나 사람이 사용하기 편하게 $+변수명을 사용하면 이와 동일한 것처럼 사용이 가능하도록 언어를 정의한 것이죠. 아주 달달허죠? 이러한 것을 그래서 Syntactic Sugar라고 칭합니다.

8: 동일하게 $와 {}를 사용하면 문자열 내부에 표현식을 나타낼 수 있습니다. 그래서 10+20의 값인 30이 출력되게 됩니다.


 그러면 \$를 콘솔 창에 출력하고 싶다면?

10: \ 자체를 출력하고 싶다면, \를 두 번 \\ 이렇게 쓰면 됩니다. 또 $를 출력하고 싶다면 \$를 사용하면 됩니다.

11: 마찬가지로 저의 수익을 달러로 표기하기 위해서 \$를 사용했습니다.

 출력 결과 위와 같이 \$와 $가 잘 표시되는 것을 확인할 수 있습니다. \의 경우 대한민국 화폐단위 원(won)으로 표기되거나 백 슬래시(/의 반대 모양)로 표기될 수 있는 점을 참고하시기 바랍니다. 🍅

결론

 코틀린에서 문자열 내에 변수를 표기하고 싶으면 $변수명을 사용하고 표현식을 표시하고 싶다면 ${표현식}을 사용하면 됩니다.

[Android/Kotlin] - [코틀린] 문자열 String 이해하는 가장 쉬운 방법 (초보, 입문자용)

[Android/Kotlin] - [코틀린] 문자 타입 Char 그리고 유니코드에 대한 고찰

[Android/Kotlin] - [코틀린] 실수(Float, Double) 타입을 다룰 때 주의해야 할 점 (오차)

댓글
댓글쓰기 폼
네이버 이웃추가
«   2020/10   »
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함