String

String으로 표현하며 문자열을 의미합니다. "" 큰따옴표를 사용하여 표시합니다.

참고로, JVM에서 String의 크기는 하나의 character당 2bytes정도를 사용한다고 합니다.

정도라고 하면 정확히 2bytes는 아니라는 이야기가 되네요. JVM String은 UTF-16 encoding을 사용합니다. 일반적으로 한 문자당 2bytes로 표현가능하지만, 점점 인코딩 해야하는 글자들이 많아지니 2bytes만으로는 부족했나봅니다. 그래서 2bytes로 표현할 수 있는 문자에 포함되지 못한 문자들을 위해 4bytes로 확장을해서 표현하는 문자가 나타나게 됩니다. 

 

String에 있는 문자열 중 특정 문자에 접근하려면 어떻게 해야할까요?

문자열 출력
문자열 출력 결과

위의 예제처럼 String은 배열처럼 사용할 수 있습니다. 주의할 점은 대부분의 프로그램밍 언어가 그렇듯이 Kotlin에서 배열(Array)이나 리스트(List)의 첫번째 인덱스(Index)는 0부터 시작합니다.

 

두개의 문자열을 합치는 방법은 여러가지가 있습니다.

그중에서 가장 쉬운 방법은 연산자 +를 사용하는 방법입니다. \n은 줄바꿈을 나타내는 escape character입니다.

String 다루기
출력 결과

 

코드의 가독성을 높이기 위해 삼중따옴표안의 문자열을 정렬했습니다. 그렇게 되면 문자열 앞의 공백까지 출력되게 됩니다. 원하지 않는 결과입니다. String에는 trimMargin() function이 있습니다. margin prefix 앞에 공백을 없애는 기능을 합니다. 사용예는 아래와 같습니다.

tirmMargin()

 

String templates $

문자열을 출력할때 편하게 사용할 수 있는 방법입니다.

 

 

 

Characters

Char로 표현하며 문자하나를 의미합니다. 미리 살펴보았듯이 문자하나는 'C' 외따옴표를 사용하여 표시합니다.

 

마찬가지로 먼저 살펴보았던 \ (back slash)를 사용하여 완성되는 escape sequence를 확인해보겠습니다.

  • \t – tab
  • \b – backspace
  • \n – new line (LF)
  • \r – carriage return (CR) 
  • \' – single quotation mark
  • \" – double quotation mark
  • \\ – backslash
  • \$ – dollar sign

back slash를 사용한 escape sequence를 확인해보니 "키보드에 없는 문자는 어떻게 사용하지?"하고 궁금해졌습니다. 

그런 경우에는 unicode를 활용합니다.

unicode는 \u를 사용하여 unicode 임을 선언합니다.

val character = 'C'

val a:Char = 'A'

val unicodeWon = '\uFFE6' //₩

val unicodeBeta = '\u03B2' //β

 

unicode의 규격을 확인해서 내가 사용하고 싶은 코드를 확인하는 것은 방대한 내용때문에 거의 불가능합니다.

 

저는 이런 사이트를 이용합니다. 검색을 통해서 원하는 unicode를 확인할 수 있습니다.

'DEVELOPMENT > Kotlin' 카테고리의 다른 글

8. Kotlin, Basic Data Types - Arrays  (0) 2024.02.26
7. Kotlin, Basic Data Types - String  (1) 2024.02.26
5. Kotlin, Basic Data Types - Boolean  (0) 2024.02.25
4. Kotlin, Basic Data Types - Numbers  (0) 2024.02.23
3. Kotlin, Data Types - Basics  (0) 2024.02.22

+ Recent posts