はじめてのRuby!concatメソッドで配列や文字列を結合する方法

プログラミングをしていると、文字列に他の文字列を結合して使用したい場合や、配列同士を結合したい場合があります。

そんなとき、concatメソッドを使用すると文字列同士、配列同士で結合することができるので便利です。

「文字列と文字列を結合する方法が知りたい」
「配列と配列を結合する方法が知りたい」

そんな方に向けて、この記事では以下の内容を解説していきます。


【基礎】concatメソッドとは
【基礎】concatで文字列を結合する方法
【基礎】concatで配列を結合する方法
【発展】さまざまな文字列の結合方法

この記事ではconcatメソッドで文字列と配列を結合する方法についてわかりやすく解説していますので、ぜひ参考にしてください!

concatメソッドとは

concatメソッドは、Stringクラスで用意されている文字列や配列同士を結合するときに便利なメソッドです。

書き方(文字列の結合)

文字列オブジェクト.concat(文字列)
文字列オブジェクト.concat(数値)

対象のオブジェクトの末尾にconcatの引数で指定した文字列が結合されます。

その際文字列オブジェクトの値は結合された文字列に変更されます。

また、concatは引数に数値型(Integer)で文字コードを指定すると、文字列の末尾に1文字分追加されます。

書き方(配列の結合)

配列オブジェクト.concat(配列)

文字列同様に対象のオブジェクトの末尾に指定した配列が結合されます。

concatで文字列を結合する

それではconcatで文字列同士を結合させてみましょう。

以下のサンプルをご覧ください。

str1 = "Hello "
str2 = "Ruby!"

str1.concat(str2)

print str1

実行結果:

Hello Ruby!

このようにconcatで指定した引数のstr2が、str1に結合されていることがわかりますね!

また、concatメソッドは以下のように引数を複数指定することも可能です。

str1 = "apple"
str2 = "orange"
str3 = "banana"

str1.concat(str2, str3)

print str1

実行結果:

appleorangebanana

concatで配列を結合する

続いてconcatで配列同士を結合する方法についても見ていきましょう。

次のサンプルをご覧ください。

fruits1 = ["apple", "orange", "melon", "banana"]
fruits2 = ["pineapple", "strawberry"]

fruits1.concat(fruits2)

print fruits1

実行結果:

["apple", "orange", "melon", "banana", "pineapple", "strawberry"]

このように配列同士も簡単に結合できることがわかりますね!

なお、以下のように配列に対して要素を1つ追加しようとして引数に文字列を指定しても「String into Array (TypeError)」のエラーが発生しますので注意しましょう。

fruits = ["apple", "orange", "melon", "banana"]
str = "strawberry"

fruits.concat(str) # TypeError

print fruits

そのため、配列に要素を追加したい場合はpushメソッドを使用するようにしましょう。

さまざまな文字列の結合方法

Rubyで文字列を結合する方法はさまざまです。

以下の記事では、ここで紹介したconcat以外にもさまざまなパターンの文字列結合について解説してますので、ぜひ参考にしてください!

まとめ

ここでは、文字列や配列を結合するconcatメソッドについて、以下の内容を解説しました。

  • concatメソッドとは
  • concatで文字列を結合する方法
  • concatで配列を結合する方法
  • さまざまな文字列の結合方法

concatメソッドは文字列同士、配列同士で結合するときに便利ですので使い方についてはよく理解しておきましょう。

もし、concatメソッドについて忘れてしまったら、この記事を思い出してくださいね!

LINEで送る
Pocket

無料でSEからWebエンジニアへ転職しませんか?



侍エンジニア塾では、完全未経験の方から現在SEだけどプログラミングはやっていないという経験者まで、幅広い方々の人生を好転させるプログラミング指導を行ってきました。SEの方とお話していくなかで、

  • システムエンジニアという職業だけどコードが書けない
  • 事務作業が多くスキルがないため将来が不安
  • スクールに通うと完全未経験者と同じスタートになるからレベルが合わない
という、すでに知識があるSEならではのお悩みがあることに気づきました。そんな方におすすめなのが、弊社の「転職コース 」です。

弊社では、マンツーマンでレッスンを行いますので、現在お持ちの知識レベルからカリキュラムを作成いたします。さらにこちらの転職コースは無料で受講を始められて転職成功でそのまま卒業できるというとてもお得なコースとなっています。

既に知識のあるSEといっても転職は年齢が若いほど受かりやすいため、まずは無料体験レッスンで今の現状や理想の働き方について一緒に考えていきましょう。

まずは無料体験レッスンを予約する

書いた人

ヤマシタ

システムエンジニアとして10年勤務→フリーランスへ。現在は侍ブログ編集部としてこれまでに200記事以上の記事を執筆。
大規模システム開発からWebアプリ開発まで経験あり。最近ではPythonの機械学習に挑戦中。

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習の効率を劇的に上げる学習メソッドを解説