カテゴリ: Ruby 更新日: 2025/12/25

Ruby配列の連結と分割を完全ガイド!+・concat・|・&・partition・each_sliceを初心者向けに解説

連結と分割:+・concat・|・&・partition・each_slice の実例
連結と分割:+・concat・|・&・partition・each_slice の実例

先生と生徒の会話形式で理解しよう

生徒

「配列が増えてきて、ごちゃごちゃしてきました。まとめたり分けたりできますか?」

先生

「Rubyの配列には、連結したり、条件で分けたりする便利な方法があります。」

生徒

「難しそうですが、パソコン初心者でも分かりますか?」

先生

「大丈夫です。紙のリストを整理する感覚で覚えられますよ。」

1. 配列の連結と分割とは?

1. 配列の連結と分割とは?
1. 配列の連結と分割とは?

Rubyの配列は、複数のデータを順番に並べて保存する箱です。 買い物メモややることリストのように、いくつも値をまとめて扱えます。

プログラムを書いていると、「二つの配列を一つにまとめたい」 「一つの配列を条件ごとに分けたい」という場面が必ず出てきます。 これが連結分割です。

2. +演算子で配列を連結する

2. +演算子で配列を連結する
2. +演算子で配列を連結する

一番分かりやすい連結方法が「+」です。 紙のリストを横につなげるイメージで使えます。


a = [1, 2, 3]
b = [4, 5]
p a + b

[1, 2, 3, 4, 5]

元の配列は変わらず、新しい配列が作られます。 初心者はまずこの方法を覚えると安心です。

3. concatで配列を直接つなげる

3. concatで配列を直接つなげる
3. concatで配列を直接つなげる

concatは、配列そのものに別の配列を追加します。 ノートに直接書き足すようなイメージです。


a = [1, 2]
b = [3, 4]
a.concat(b)
p a

[1, 2, 3, 4]

元の配列が変わる点に注意しましょう。 「もう元に戻さない」と決めているときに向いています。

4. | 演算子で重複を除いて連結

4. | 演算子で重複を除いて連結
4. | 演算子で重複を除いて連結

「|」は重複を自動で消しながら連結します。 同じ内容が何度も出てほしくない場合に便利です。


a = [1, 2, 3]
b = [3, 4, 5]
p a | b

[1, 2, 3, 4, 5]

名簿を統合するときのイメージで覚えると理解しやすいです。

5. & 演算子で共通部分だけ取り出す

5. & 演算子で共通部分だけ取り出す
5. & 演算子で共通部分だけ取り出す

「&」は、二つの配列に共通している要素だけを取り出します。 両方に書いてある名前を探すような感覚です。


a = [1, 2, 3]
b = [2, 3, 4]
p a & b

[2, 3]

条件が重なるデータを探すときに役立ちます。

6. partitionで条件ごとに分割する

6. partitionで条件ごとに分割する
6. partitionで条件ごとに分割する

partitionは、条件によって配列を二つに分けます。 例えば「合格と不合格」「偶数と奇数」のように分類できます。


numbers = [1, 2, 3, 4, 5]
result = numbers.partition { |n| n.even? }
p result

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

even?は「偶数かどうか」を調べる命令です。 条件に合うものと合わないものに分かれます。

7. each_sliceで一定数ずつ分割する

7. each_sliceで一定数ずつ分割する
7. each_sliceで一定数ずつ分割する

each_sliceは、配列を決まった数ずつ区切ります。 お菓子を三個ずつ袋に分けるようなイメージです。


numbers = [1, 2, 3, 4, 5, 6]
numbers.each_slice(2) do |group|
  p group
end

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

データをまとめて処理したいときにとても便利です。

8. 連結と分割を使いこなすコツ

8. 連結と分割を使いこなすコツ
8. 連結と分割を使いこなすコツ

配列操作は、紙のリスト整理を想像すると理解しやすくなります。 「足す」「混ぜる」「分ける」という感覚を大切にしましょう。

Rubyの配列はとても柔軟なので、 慣れてくるとデータ整理が一気に楽になります。

関連記事:
カテゴリの一覧へ
新着記事
New1
データベース
SQLの処理が遅くなる原因とは?初心者向けにデータベースパフォーマンス最適化を完全解説
New2
Ruby
RubyのネストHash操作を徹底解説!digとtransformメソッドで複雑なデータも楽々
New3
Rails
Railsインデックス設計の極意!爆速サイトを作るためのスキーマ設計ガイド
New4
データベース
SQLのCOMMITとROLLBACKとは?トランザクション操作を初心者向けに完全解説
人気記事
No.1
Java&Spring記事人気No1
Ruby
PATHと環境変数の正しい設定!Windows・Mac・Linux別チェックリスト付き
No.2
Java&Spring記事人気No2
Rails
Railsで日本語と時刻の設定をしよう!初心者でも安心のlocale/zone初期設定チートシート
No.3
Java&Spring記事人気No3
Ruby
Rubyのハッシュを徹底比較!シンボルキーと文字列キーの違いと使い分け
No.4
Java&Spring記事人気No4
Rails
Railsマイグレーションの型選びを完全ガイド!初心者が迷わないカラム設計
No.5
Java&Spring記事人気No5
Ruby
WindowsでRubyをインストールする方法!RubyInstallerとMSYS2を使った完全ガイド
No.6
Java&Spring記事人気No6
Rails
RailsモデルとActive Record基礎|ID戦略を完全理解!AUTO INCREMENT・UUID・ULIDの比較と導入手順
No.7
Java&Spring記事人気No7
データベース
ACID特性とは?データベーストランザクションの信頼性を初心者向けに徹底解説
No.8
Java&Spring記事人気No8
Rails
RailsモデルとActive Record基礎|クエリログの読み方を理解してEXPLAIN・joins・includesの違いを学ぼう