이번 포스팅에서는 zip 함수를 정리해봅니다.
Summary에서는 Sequence프로토콜을 따르는 두 개의 기본 시퀀스로 구성된 쌍의 시퀀스를 만들도록 되어 있습니다.
여기서 시퀸스 프로토콜은 '요소에 대한 순차적이고 반복적인 액세스를 제공하는 유형'으로 친숙한 배열에 이에 해당합니다.

아래는 예시입니다.
let someAlmonds = ["Honey Butter", "Wasabi", "Corn", "Buldak", "Mint Choco"]
let someNumbers = [0, 1, 2, 3, 4]
let newSequence = zip(someAlmonds, someNumbers)
for item in newSequence {
print(item)
}
// 출력
//("Honey Butter", 0)
//("Wasabi", 1)
//("Corn", 2)
//("Buldak", 3)
//("Mint Choco", 4)
만약 두 시퀸스의 count가 다르면 어떻게 될까요?
count가 적은 쪽의 시퀸스에 맞춰서 쌍 시퀸스가 생성되는 것을 확인해볼 수 있습니다.
let someAlmonds = ["Honey Butter", "Wasabi", "Corn", "Buldak"] // 4개
let someNumbers = [0, 1, 2, 3, 4] // 5개
let newSequence = zip(someAlmonds, someNumbers)
for item in newSequence {
print(item)
}
//("Honey Butter", 0)
//("Wasabi", 1)
//("Corn", 2)
//("Buldak", 3)
이번 포스팅에서는 zip 함수를 정리해봅니다.
Summary에서는 Sequence프로토콜을 따르는 두 개의 기본 시퀀스로 구성된 쌍의 시퀀스를 만들도록 되어 있습니다.
여기서 시퀸스 프로토콜은 '요소에 대한 순차적이고 반복적인 액세스를 제공하는 유형'으로 친숙한 배열에 이에 해당합니다.

아래는 예시입니다.
let someAlmonds = ["Honey Butter", "Wasabi", "Corn", "Buldak", "Mint Choco"]
let someNumbers = [0, 1, 2, 3, 4]
let newSequence = zip(someAlmonds, someNumbers)
for item in newSequence {
print(item)
}
// 출력
//("Honey Butter", 0)
//("Wasabi", 1)
//("Corn", 2)
//("Buldak", 3)
//("Mint Choco", 4)
만약 두 시퀸스의 count가 다르면 어떻게 될까요?
count가 적은 쪽의 시퀸스에 맞춰서 쌍 시퀸스가 생성되는 것을 확인해볼 수 있습니다.
let someAlmonds = ["Honey Butter", "Wasabi", "Corn", "Buldak"] // 4개
let someNumbers = [0, 1, 2, 3, 4] // 5개
let newSequence = zip(someAlmonds, someNumbers)
for item in newSequence {
print(item)
}
//("Honey Butter", 0)
//("Wasabi", 1)
//("Corn", 2)
//("Buldak", 3)