6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Rubyのzipメソッドをイメージで理解する【3分で読めます】

Last updated at Posted at 2019-03-24

ついつい存在自体を忘れてしまうzipメソッド。
イメージで覚えてすぐに思い出せるようにしよう。

メソッドの詳細

使い方は下記リンクを参考にしてください。
Array#zip(公式リファレンス)

考え方

とりあえずジッパーをイメージする
ジッパーの画像

上の画像を逆さまにしたものをイメージしてください。

解説

まずは実行結果のサンブル。

sample.rb
a1 = [1,2,3]
a2 = [4,5]
a3 = [6,7,8,9]

a1.zip(a2,a3)

# > [[1, 4, 6], [2, 5, 7], [3, nil, 8]]

oh,ムズカシイネ

1.配列をジッパーの歯(zip teeth)と見立てる

配列を
縦に並べて
zip teeth


普通のArray

a1 = [1,2,3]

縦版Array

a1


1
,
2
,
3


この調子で全部縦にすると.....

a1 = [1,2,3]
a2 = [4,5]
a3 = [6,7,8,9]

↓↓↓↓↓↓↓↓↓↓

a1 a2 a3
    
  
1  4  6
,  ,  ,
2  5  7
,     ,
3     8
   ,
      9
      

案外見やすいですね。

2.上から下にジッパーを閉める

[
[1,4,6]
[2,5,7]
[3,nil,8]
]

zip teathが噛み合いました。
もう外せそうにありません。

むすびのことば

命名大事だと思えました。

6
3
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?