Rubyでlambdaメソッドを使ってアロー演算子を使う方法を現役エンジニアが解説【初心者向け】

初心者向けにRubyでlambdaメソッドを使ってアロー演算子を使う方法について現役エンジニアが解説しています。lambdaメソッドとは、変数にブロックを代入することができて、アロー演算子とはラムダを作成するための演算子です。lambdaメソッドやアロー演算子の書き方や使い方を解説します。

TechAcademyマガジンはオンラインのプログラミングスクールTechAcademy [テックアカデミー]が運営。初心者向けに解説した記事が4,000以上あります。現役エンジニアの方はこちらをご覧ください。

Rubyでlambdaメソッドを使ってアロー演算子を使う方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

そもそもRubyについてよく分からないという方は、Rubyとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプRuby講座の内容をもとに紹介しています。

 

田島悠介

今回は、Rubyに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

Rubyでlambdaメソッドを使ってアロー演算子を使う方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

目次

 

アロー演算子とは

アロー演算子は様々なプログラミング言語で使われていますが、「->」の記号のことを指します。

演算子とは、代表的にものにプラス記号やマイナス記号などがありますが、他にも++、==、>、*などの多くがあり、その中のひとつにアロー演算子が存在します。それぞれのプログラミング言語によって意味が異なるため、注意が必要です。

例えば、イコール記号(=)は言語によっては「代入」だけではなく「比較」に使われる場合もあります。Rubyではアロー演算子は、ラムダを作成するための演算子です。

ラムダとはproc.newメソッドのようにブロックを変数に代入をすることが出来るprocクラスのオブジェクトです。

[PR] Rubyのプログラミングで挫折しない学習方法を動画で公開中

lambdaメソッドを使ってアロー演算子を使う方法

lamdaメソッドは{}のブロックで記述します。引数を受け取るブロック変数をXとした場合は、

->  (x){

(やりたい処理)

}

と、このような構文で記述します。実行する場合には引数を渡してあげる事が必要ですが、通常のブロックと同じようにデフォルト値を与えることも可能です。

->(x=0){

(やりたい処理)

}

 

実際に書いてみよう

(test.rb)

test = -> (x) {
 p x
}
test.call(1)

test = -> (x = 0) {p x}
test.call()

 

まとめ

lambdaメソッドはブロックをそのまま変数に代入することが出来るため便利です。callメソッドによってlambdaメソッドのオブジェクトを実行することが出来るので、併せて使用するようにしていきましょう。

筆者プロフィール

木村勇土

TechAcademyの現役メンター。

現在は行政書士事務所を運営しており、お客様にはプログラマーやフリーランサーも多い。
WordPressを中心とした自社のWebサイトの修正などを行なっている。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも最短4週間でRuby on Railsを使ったプログラミングを習得できるオンラインブートキャンプRuby講座を開催しています。

挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。