본문 바로가기
Kotlin/Exercise

스트링 뒤집기

by 봄석 2019. 3. 13.

스트링 뒤집기 

스트링을 거꾸로 뒤집는 방법!


TestCode

class ReverseStringTest {
 
    @Test
    fun testAnEmptyString() {
        assertEquals("", reverse(""))
    }
 
    @Test
    fun testAWord() {
        assertEquals("tobor", reverse("robot"))
    }
 
    @Test
    fun testACapitalizedWord() {
        assertEquals("nemaR", reverse("Ramen"))
    }
 
    @Test
    fun testASentenceWithPunctuation() {
        assertEquals("!yrgnuh m'I", reverse("I'm hungry!"))
    }
 
    @Test
    fun testAPalindrome() {
        assertEquals("racecar", reverse("racecar"))
    }
 
}



해결안1) String.reversed() 함수

fun reverse(input: String= input.reversed()


String.reversed() 함수는 스트링을 거꿀로 뒤집어줍니다. 

robot 을 입력했다면 tobor이 리턴되게됩니다


해결안2) indices 

 fun reverse(inputString: String= buildString {
        inputString.indices.forEach { this.append(inputString[inputString.length - 1 - it]) }
    }


indices = index의 복수로 , 인덱스의 범위를 리턴합니다 (intRange)

만약 robot이라는 단어였다면 0..4라는 범위를 리턴하게 됩니다 .


댓글