const vall TAVERN_NAME = "Taernly's Folly"
fun main(args: Array<String>) {
placeOrder()
}
private fun placeOrder() {
val indexofApostrophe = TAVERN_NAME.indexOf('\'')
val tarvernMaster = TAVERN_NAME.substring(0 until indexofApostrophe)
println("마드리갈은 $tarvernMaster 에게 주문한다.")
}
- 범위를 지정
특정 문자열을 기준으로 단어를 짤라 리스트에 담아 리턴
const vall TAVERN_NAME = "Taernly's Folly"
fun main(args: Array<String>) {
placeOrder("shandy,Dragon's Breath,5.91")
}
private fun placeOrder(menuData: String) {
val indexofApostrophe = TAVERN_NAME.indexOf('\'')
val tarvernMaster = TAVERN_NAME.substring(0 until indexofApostrophe)
println("마드리갈은 $tarvernMaster 에게 주문한다.")
val data = menuData.split(',')
val type = data[0]
val name = data[1]
val price = data[2]
val message = "마드리드갈은 금화 $price 로 $name ($type)를 구입한다."
println(message)
}
const vall TAVERN_NAME = "Taernly's Folly"
fun main(args: Array<String>) {
placeOrder("shandy,Dragon's Breath,5.91")
}
private fun placeOrder(menuData: String) {
val indexofApostrophe = TAVERN_NAME.indexOf('\'')
val tarvernMaster = TAVERN_NAME.substring(0 until indexofApostrophe)
println("마드리갈은 $tarvernMaster 에제 주문한다.")
val (type, name, price)= menuData.split(',')
val message = "마드리드갈은 금화 $price 로 $name ($type)를 구입한다."
println(message)
}
const vall TAVERN_NAME = "Taernly's Folly"
fun main(args: Array<String>) {
placeOrder("shandy,Dragon's Breath,5.91")
}
private fun toDragonSpeak(phrase: String) = phrase.replace(Regex("[aeiou]")) {
when(it.value) {
"a" -> "4"
"e" -> "3"
"i" -> "1"
"o" -> "0"
"u" -> "|_|"
else -> it.value
}
}
private fun placeOrder(menuData: String) {
:
val phrase = "와, $name 진짜 좋구나"
println("마드리갈이 감탄한다: ${toDragonSpeak(phrase)}")
}
문자열은 불변이다
- String 타입은 불변 객체
- 한 번 초기화 되면 내용을 수정할 수 없음
- 수정이 필요한 경우 수정한 내용으로 다시 생성