import java.util.Date
fun main() {
val name = readLine()
println("Hello, $name! \n Today is ${Date()}")
}
${}의 중괄호 사이에 문자열을 넣어서 사용할 수 있다.$name과 같이 식이 간단한 변수 참조인 경우 중괄호 생략 가능import java.util.Date
fun main() {
val name = readLine()
val message = """
Hello, $name!
Today is ${Date()}
""".trimIndent()
println(message)
}
"Hello!".length // 6
"Hello!".lastIndex // 5
val s = "Hello!"
println(s[0]) // H
println(s[5]) // !
println(s[10]) // 잘못된 인덱스
val s1 = "Hello!"
val s3 = "Hel" + "lo!"
println(s1 == s2) // true <java : s1.equals(s2)>
Tip)
자바의==와!=연산자는 참조 동등성을 비교하기 때문에 실제 문자열 내용을 비교하려면equals()메서드를 사용해야 한다.
코틀린에서는==가 기본적으로equals()를 가리키는 편의 문법이기 때문에==를 사용하면, 직접equal()를 호출하므로, 따로equals()를 호출할 필요가 없다.
코틀린에서 참조 동등성을 쓰려면?
===와!==연산자를 사용하면 된다.
isEmpty(), isNotEmpty() : 문자열이 비어있는지 검사
"Hello".isEmpty() // false
"Hello".isNotEmpty() // true
substring() : 부분 문자열 추출
"Hello".substring(2) // "llo"
"Hello".substring(1, 3) // "el"
endsWith(), startsWith() : 접두사나 접미사인지 검사
"Hello".startsWith("Hel") // true
"Hello".endsWith("lo") // true
indexOf() : 인자로 받은 문자나 문자열이 나타나는 첫번째 인덱스를 반환
//맨 앞부터 찾기
"abcabc".indexOf('b') // 1
//주어진 인덱스부터 찾기
"abcabc".indexOf('b', 2) // 4