### Discussed in https://github.com/orgs/Programming-Language-Practice/discussions/44 <div type='discussions-op-text'> <sup>Originally posted by **JoisFe** February 12, 2023</sup> # 11. 문자열 (String) ###문자열 - 문자 (Char)들을 일렬로 나열한 것 ``` kotlin var str: String = "Hello" println(str) str = str + "\nKotlin!" println(str) println(str[8]) val num = 10 * 5 + 3 println(str + num) } ``` <img width="224" alt="image" src="https://user-images.githubusercontent.com/90208100/218299598-25903c81-a42c-4e28-b3f3-83dc4d3a64d7.png"> - String 타입의 변수 str을 선언하고 있음 - String은 문자열을 저장할 수 있는 타입 - 큰 따옴표로 감싼 "Hello" 는 String 타입의 리터럴임 - 문자 여러 개를 큰 따옴표로 감싸면 그 부분은 String 타입이 됨 <img width="389" alt="image" src="https://user-images.githubusercontent.com/90208100/218299774-f565965c-2848-49bb-a0d4-ad27014c2657.png"> - 문자열 "Hello"의 모습을 간략하게 나타내면 위 그림과 같음 - 문자 한 개가 문자열 한 칸에 들어감 - 띄어쓰기도 마찬가지로 문자 한 개로 취급함!! - 각 문자에는 번호가 매겨져 있음 (이전 장에서 배움) - 여기서 첫 번째 문자가 1번이 아닌 0번임을 주의 !! <img width="985" alt="image" src="https://user-images.githubusercontent.com/90208100/218300039-ce2dd6b7-01f2-4072-8e7c-1bc458fce3f4.png"> - + 연산자의 양 피연산자가 String 타입이면 왼쪽의 문자열에 오른쪽 문자열을 덧 붙임 - 따라서 str에 저장된 값은 위와 같이 변함 - \n은 줄바꿈을 나타내는 특수 문자 - 큰 따옴표 안에서 직접 줄바꿈을 하면 오류가 발생하기 때문에 줄바꿈을 \n로 대체하여 표현 ### 문자열, 문자의 배열 - String 타입의 표현식 우측에 대괄호[]를 적고 그 안에 Int 값을 적으면 그 번호에 맞는 문자를 Char 타입으로 꺼낼 수 있음 - 즉 str 자체는 String 타입이지만 str[8]은 Char 타입임 - str의 8번째 저장된 문자는 't'이므로 't'가 출력됨 - 8처럼 문자의 위치를 나타내는 숫자를 인덱스 (Index) 라고 함 ### String과 String이 아닌 값을 + 연산? <img width="840" alt="image" src="https://user-images.githubusercontent.com/90208100/218300202-b40b6d54-31c0-4def-9af4-35ac1b0f4fae.png"> - String과 String 아닌 값을 + 연산자로 연결 시 String이 아닌 값을 String으로 변환한 뒤 서로 합침 - 위 그림에서 보면 알 수 있듯 53이 문자열로 변하고 그대로 합쳐짐을 알 수 있음 ## Reference ### 초보자를 위한 Kotlin 200제, 정보문화사, [엄민석]</div>
Discussed in https://github.com/orgs/Programming-Language-Practice/discussions/44
Originally posted by JoisFe February 12, 2023
11. 문자열 (String)
###문자열
문자열, 문자의 배열
String과 String이 아닌 값을 + 연산?
Reference
초보자를 위한 Kotlin 200제, 정보문화사, [엄민석]