Search
Duplicate

Array의 replaceSubrange(_: with: )

생성일
2024/07/22 00:23
태그
Grammar

Array의 replaceSubrange(_: with: )

지정된 컬렉션의 요소로 특정 범위의 요소를 바꿔주는 메서드
Array 타입에서 특정 범위의 요소들을 다른 요소들로 대체하는데 사용된다.

정의

mutating func replaceSubrange<C>( _ subrange: Range<Int>, with newElements: C ) where Element == C.Element, C: Collection
Swift
복사

파라미터

subrange
대체할 배열의 부분 범위
Range<Int> 타입을 사용
newElements
배열의 해당 범위를 대체할 새로운 요소들
Collection 타입이어야 하며, 배열의 요소 타입(Element)과 동일해야한다.

반환값

반환값 없음, 배열을 직접 변경(mutate) 한다.

예시)

var numbers = [1, 2, 3, 4, 5] numbers.replaceSubrange(1...3, with: [6, 7]) print(numbers) // [1, 6, 7, 5]
Swift
복사
numbers의 인덱스 1에서 3까지의 요소 [2, 3, 4]가 [6, 7]로 대체

주의사항

범위유효성
subrange로 지정된 범위는 배열의 유효한 인덱스 범위 내에 있어야 한다.
그렇지 않으면 런타임 에러 발생
배열 크기 변화
newElement의 요소 수가 subrange의 요소 수와 다를 수 있다.
새로운 요소 수가 더 많으면 배열이 커지고, 적으면 배열이 작아진다.

전체 요약

replaceSubrange(_: with:) 메서드는 배열의 특정 범위의 요소를 다른 요소들로 대체하는 기능을 한다.
지정된 범위의 요소들을 새로운 컬렉션의 요소들로 대체하며, 배열의 크기를 조정할 수 있다.
사용 시, 지정된 범위가 유효한지 확인하는 것이 중요하다.