復習:引数の扱い方
引数を使うと何がいいとー?
メソッドを使うと、一連の処理がしやすくなるけど、そのままでは、一定の処理しかしてくれない!
そこで、引数を使うとさらに汎用性の高い処理ができるようになるとよ。
汎用性の高い処理で何ね?
じゃぁ、どんな風に汎用性の高い処理ができるんか、例を使って説明するばい。
例) ハンバーガーづくりで考えてみます
チーズバーガーだけじゃ寂しいよ…
じゃ、ハンバーガーづくりで例えてみるばい!
このコードをターミナルで実行すると以下のようになるよね。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
チーズバーガー作るね
チーズをトッピングして…
チーズバーガーの出来上がり!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1行目のburgerがメソッドになっとるけん、8行目のputs burgerに反映されとるよね!
でも、このまんまやったら、チーズバーガーのことしか反映されんけん、さみしくない?
チーズ以外のトッピングもできるようになるのが、引数!
お望みどおりのバーガーに!!
1行目のメソッド burgerの後に(something)が追加されとるね! この( )が引数!
注目すべきなのは、10行目! ここのburgerの後にも( )があるやろ?これも引数 中身はinputやけども。
実は、この2つの引数( )は関連づけられとるんよ。
10行目の引数はinputよね。 inputは何かというと8行目にあるinputで入力された文字列たい。
やけん、inputで入力された文字列が、1行目の引数somethingに関連づけられるってことたいね。
(※ちなみに元になるのがinputの方の引数なので、inputの方を本引数、somethingの方を仮引数というらしいよ)
(※ちなみに本引数と仮引数は今回みたいに違う名前にしてもいいし、同じ名前でもいいらしいよ!分かりづらくならないようにするといいよね)
んじゃ、例えば、このコードをターミナルで実行して、inputで「アボカド」と入力したとしてみると・・・
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
何バーガーが食べたい?
アボカド #これはターミナルで入力した文字列
アボカドをトッピングして…
アボカドバーガーの出来上がり!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ってなるわけなんよ。
これなら、inputで入力した文字列に合わせて、色んなバーガーを表示させられるし、汎用性が高いよね!
でもでも、引数はまだまだ奥が深い。。。
スコープの範囲とか絡んでくると複雑になると、よく分からんくなるけど、頑張りましょう!
Author And Source
この問題について(復習:引数の扱い方), 我々は、より多くの情報をここで見つけました https://qiita.com/atsunobu_tsujihata/items/ac0409cf6c5ed6c0fa9b著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .