2017-12-02 4 views
1

Swift 표준 라이브러리 API는 Array에 주어진 클로저를 사용하여 시퀀스의 요소를 결합한 결과를 반환하는 reduce(into:_:) 메서드가 있음을 지정합니다.인접 요소를 필터링하기 위해 reduce (into : _ :) 사용

API 문서에 "이 방법을 정수 배열에 사용하여 인접한 등호를 필터링 할 수 있습니다."라고 언급되어 있습니다. 누군가가 이것이 어떻게 수행 될지에 대한 예를 제공 할 수 있습니까?

답변

2

당신은 다음과 같은 수의 실행을 제거 할 수 :

let numbers = [1, 1, 2, 2, 2, 3, 4, 4, 5, 4, 3] 
let filtered = numbers.reduce(into: [Int]()) { newArray, number in 
    if newArray.last != number { newArray.append(number) } 
} 

print(filtered) 

[1, 2, 3, 4, 5, 4, 3]

관련 문제