スライドショー

【完全網羅】Ruby文字列の連結方法まとめ(+,

どうも!インストラクターのババです!

今回は文字列の連結操作について解説していきます。連結と聞くと、何か難しそうなイメージを持たれるかもしれませんし、似たようなメソッドが多いRubyでは、メソッドの使い分けができるか心配になってしまうかもしれません!

そこで今回は文字列を連結するメソッドについてまとめてみました。これを読めば、連結するメソッドが理解でき、使い分けもできるようになります!それでは行ってみましょう!

文字列を連結する

shutterstock_119356303

画像:shutterstock

それでは文字列の連結についてみていきましょう!

+(通常の連結メソッド)

まずはじめに紹介するのは「+」メソッドです。みたまま意味が想像できるわかりやすいメソッドで、連結を行うにあたって一番使用されているメソッドです。

p "ruby" + "python"
# => "rubypython"

このように直感的に文字列を連結することができます。

数値との連結

とても便利な「+」ですが、数値と連結する際は注意が必要です。

p "ruby" + 1
#=> a.rb:4:in `+': no implicit conversion of Fixnum into String (TypeError)
	from a.rb:4:in `
'

このように数字と連結するとエラーが出てしまいます。そのため「to_s」メソッドを使用して、数値をstring型にしてあげる必要があります。

p "ruby" + 1.to_s
#=> "ruby1"

数値と連結する際には型をしっかり確かめるようにしましょう!

<<(破壊的連結メソッド)

文字列の連結メソッドにはレシーバごと変更してしまう、破壊的メソッドが用意されています。それが「<<」メソッド[sc name="end_green"]です。

string1 = "ruby"
string2 = "python"

string1 + string2
p string1 #=> "ruby"

string1 << string2
p string1 #=> "rubypython"

「+」で連結した時は、レシーバ自身に変更はありませんが、「<<」で連結した時は、レシーバ自身変更されていることがわかります。このように同じ連結メソッドでも処理が違うので、注意するようにしましょう!

join(配列を連結)

文字列の連結とは少し離れてしまうかもしれませんが、配列を連結して一つの文字列にする方法をご紹介します。
配列を連結する際に使用するメソッドがjoinメソッドです。

array = ["ruby", "pyton"]
p array.join #=> "rubypython"

このように配列を連結して一つの文字列二することができます。

まとめ

今回は文字列の連結について解説していきました!Rubyでは文字列を直感的に操作することができるので、楽しくプログラミングをすることができます!文字列操作の中でも文字列の連結は特によく使用するものです。必ず覚えておくようにしましょう!

Rubyの文字列をしっかり理解したい方に

この記事は文字列を体系的に解説した3ステップで簡単! Rubyの文字列を 完全理解の一部となります。文字列をさらに理解したい方はこちらを読んでどんどん理解を深めていくようにしましょう。

LINEで送る
Pocket

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



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

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

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

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

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

書いた人

ババシュンスケ

ババシュンスケ

こんにちは!
今年大学を飛び出し、フリーランスエンジニアとして働いています、ババです!

エンジニアはしんどい仕事と思われていますが、実はそんなにしんどくなくて、お金ももらえて、社会のためになる素晴らしい仕事というのを伝えるために、侍で業務委託として働いています!!

フリーランスの日常やら書いているブログやってます=>http://www.babashun.net/

おすすめコンテンツ

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

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