반응형
♣ **** 화면 출력의 format 만들기 ****
- 자바처럼 문자열 결합 연산자 + 사용가능합니다.
println("Hello" + " Kotlin") //출력: Hello Kotlin
- 하지만 Number타입에서 String타입으로 자동 형변환은 이루어지지 않습니다.
println( 10 + "Hello") //ERROR
- 그래서 Number자료형을 String자료형으로 변환하여 출력해야 합니다. [ 기초타입의 형변환 기능 .toXXX() 사용 ]
println(10.toString() + " Hello") //"10"+" Hello" --> 출력: 10 Hello
- 특이한 점은 문자열이 먼저 있다면 자동 형변환이 되어 덧셈이 가능해 집니다. 특이하죠.
println("Hello" + 10) //"Hello" + "10" --> 출력: Hello10
- 즉, 두 변수의 값을 덧셈하여 50 + 30 = 80 모양의 출력 코드를 작성해보면.
var nnn1 = 50
var nnn2 = 30
//println( num1 +" + "+ num2 +" = " + num1+num2) //ERROR - 이렇게 작성할 수 없음. [숫자가 처음이라서]
println(nnn1.toString() + " + " + nnn2.toString() + " = " + (nnn1 + nnn2))//이렇게 형변환 하거나
println("" + nnn1 + " + " + nnn2 + " = " + (nnn1 + nnn2)) //이렇게 "" 빈 문자열을 먼저 써서 덧셈 해아함.
복잡해 보이네요. 위 2가지 해결 방법 모두 가독성이 떨어지고 실수의 여지가 많습니다. 이를 위해 제공되는 문법이 있습니다.
- 문자열 탬플릿 문법 : 문자열 "" 안에서 변수명을 인식하는 문법
println(" $nnn1 + $nnn2 = ${nnn1 + nnn2} ") //이렇게 " " 사이에 $키워드로 변수명임을 표시하고 사용하는 방식 사용
이렇게 $변수명 을 사용하는 것을 [문자열 탬플릿] 이라고 부름
- 즉, 이렇게 코드를 작성하면 코드의 가독성이 더 좋아 질 겁니다.
var name = "sam"
var age = 20
println("이름 : $name \n나이 : $age")
// *출력*
//이름 : sam
//나이 : 20
반응형
'소소한 소스코드' 카테고리의 다른 글
[안드로이드 Android] Kotlin 언어로의 전환 2. 자료형과 변수 (0) | 2025.02.14 |
---|---|
[안드로이드 Android] Kotlin 언어로의 전환 1. 주요특징 및 화면출력 (0) | 2025.02.08 |
[안드로이드 Android] Kotlin 언어로의 전환. (2) | 2025.02.07 |
[안드로이드 Android] 데이터 바인딩 Data Binding #3 - EditText 사용하기 (0) | 2021.09.30 |
[안드로이드 Android] 데이터 바인딩 Data Binding #2 - 버튼클릭이벤트 처리하기 (0) | 2021.09.29 |