는이 건설 로직 또는 루비 행동의 알고리즘의 설명을 줄 수 : Enumerable에서을 반복 처리가 2 배열 출력을 줄 때 루비 분할 배열
arr = [1,2,3,4,5]
arr.partition.with_index{|_,index| index>2}
어떻게 논리를 공식화 할 수 있습니다. 우리는 단 하나의
partition
을 그것의 clear - just method라는 동작으로 부를 때, 그러나
with_index
으로 갈 때이 건축물은 나를 위해 "마법"이됩니다.
당신에게
UPD 감사합니다 조건은 아니다 partition
의 블록에, 그것은 별도의 'Enumerable에서'개체 방법 블록에 있습니다. 이 방법은 with_index
입니다. 이 두 번째 상호 작용 수준은 나를 위해 재미있다. with_index
의 조건이 파티션 결과에 영향을주는 이유는 무엇입니까? 이것은 partition
설명서에서 명확하지 않은 동작입니다.
여기 당신에게 어떤 마법이 있습니까? 두 개의 배열을 반환합니다. 블록의 요소를 포함하는 첫 번째 요소는 true로 평가되고 나머지 요소는 [api doc] (https://ruby-doc.org/core-2.4.2/Enumerable.html#method- i- 파티션)). –
알렉스 골 루벤 코 (Alex Golubenko) 당신이 단 하나의 파티션에 대해 말해주었습니다. 파티션과 with_index 사이의 통신에 대해 질문합니다. –