https://school.programmers.co.kr/learn/courses/30/lessons/181886

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 

프로그래머스 기초레벨의 5명씩 문제를 한번 풀어봤다.

 

class Solution {
    fun solution(names: Array<String>): Array<String> {
        val result = mutableListOf<String>()
        for (i in names.indices step 5) {
            result.add(names[i])
        }
        return result.toTypedArray()
    }
}

 

코드 설명

  • names.indices step 5:  배열의 인덱스 범위를 5씩 건너뛰면서 반복합니다.
  • result.add(names[i]):   각 그룹의 첫 번째 이름(인덱스 i의 값)을 결과 리스트에 추가합니다.
  • result.toTypedArray(): 결과 리스트를 배열로 변환하여 반환합니다.
더보기

toTypedArray() 함수는 Kotlin의 컬렉션(예: List)을 배열(Array)로 변환해 주는 함수이다. 이 함수는 컬렉션에 있는 요소들을 기반으로 동일한 타입의 배열을 만들어 반환한다.

자세한 설명

  • 컬렉션과 배열의 차이:
    Kotlin에서는 List, Set, Map과 같은 컬렉션과, 고정 크기를 가지는 배열이 있다.
    컬렉션은 요소 추가나 삭제가 가능한 반면, 배열은 생성 후 크기가 고정된다
  • toTypedArray() 사용 이유:
    때때로 함수나 API가 배열 타입을 요구할 때, 컬렉션(List 등)으로 작업한 후 최종적으로 배열로 변환해야 할 필요가 있다. 이때 toTypedArray()를 사용하면 쉽게 변환할 수 있다.
  • 동작 방식:
    내부적으로 toTypedArray()는 컬렉션에 포함된 각 요소를 순회하며 동일한 타입의 배열을 만들어, 그 배열에 요소들을 채워 반환한다.

+ Recent posts