fbpx

[第7回] メソッドの使い方を学ぶ|Unityで学ぶC#入門


「Unityで学ぶC#入門」の連載第6回は「if文を利用した条件分岐を学ぶ」でした。

第7回の今回はメソッドの使い方についてご紹介していきます。

メソッドを使いこなすことができると、プログラミングの効率が格段に上がりますのでぜひご参考ください。

二次関数

メソッドとは

そもそもメソッドってなに?と疑問に思う方もいらっしゃるかもしれません。

メソッドとは簡単にいうと「関数」です。

関数イメージ

ある変数Xを入力として関数Y(メソッド)に入れると、特定の法則に基づいて出力Zを出力する。これが関数(メソッド)です。

例えば関数「Y=X^2」という関数では、「X=10」を与えると出力「Z=100」が出力されます。

関数Y=X^2

このYの部分をC#でも作成することができます。

メソッドの定義

メソッドの定義方法をご紹介します。

UnityでC#スクリプト「Test」を作成してください。

また、任意のゲームオブジェクトを作成してTestスクリプトを設置してください。

ここまでの方法は連載第3回の記事でご紹介しています。

Testスクリプトを以下のように編集してください。

詳しくプログラムを確認していきます。

まずはメソッドYから確認していきましょう。

まずは2行目から確認します。

これは「返り値の型がint型のメソッドY」で、「引数がint型のx」であることを意味します。

返り値とは出力の値の型です。先ほどの「Y=X^2」で言えばこれは整数(int)もしくは浮動小数点型(float)を返り値の型とするのが適切です。

次に引数とは関数に与える入力のことです。先ほどの「Y=X^2」に与えた「X=10」の型を決めるものです。ここで置いている「x」は仮の変数です。つまり、どんな整数を与えてもメソッド内で扱うときはとりあえず「x」として扱うということを意味しています。

次にメソッドの中身を確認します。

ここでは  「int型の変数z」を定義して、与えられた引数の2乗を変数zに代入しています。

ここで作成した変数zを「return z;」とreturn文を記述することで、呼び出し元に変数zの値を返すことができます。

次に呼び出し元となるStart関数を確認します。

まず「値が10のint型変数x」と「値なしのint型変数result」を定義します。

次にメソッドを呼び出します。

メソッドの呼び出しは

の形で呼び出すことができます。

ここでは10が入った変数xを引数として、メソッドYを呼び出しています。

また、呼び出したメソッドYをそのままresultに代入しています。

最後に出力してプログラム終了です。

それでは実行結果を見てみましょう。

↓実行結果

2乗メソッド実行結果

「x=10」のとき、「Y=100」になっていることが確認できました。

他にも変数xの値を変更して2乗の計算ができていることを確認してみましょう。

↓x=12のときの実行結果

X=12

問題なく計算ができていることが確認できました。

そのほかのメソッド例

その他にもメソッドを使用した例をご紹介します。

与えた文字列を連結するメソッド

与えた2つの文字列を連結して返すメソッドをご紹介します。

スクリプトは以下の通りです。

今回は引数を2つ与えています。

このように引数は複数与えることができます。

カンマ区切りで与えることで複数の引数を指定できます。

↓実行結果

文字列連結メソッド実行結果

メッセージを出力するメソッド

次に与えた引数を表示する返り値の存在しないメソッドをご紹介します。

スクリプトは以下の通りです。

返り値を必要としないとき、メソッドの型を「void」とします。

↓実行結果

メッセージメソッド実行結果

まとめ

いかがでしたでしょうか。

今回はメソッドの使い方についてご紹介いたしました。

同じようなコードをできるだけ書かないようにする技術はエンジニアにとって非常に重要です。

プログラミングをするときにはこのようなことを意識すると、作業効率が格段にアップします。

また、C#と並行してUnityの勉強をするとより一層理解も深まりますので、以下記事を参考にUnityのスキルも身につけてみてはいかがでしょうか。

参考記事)Unityの使い方

続けて第8回の記事に読む方はこちらをクリック

 

他の回の記事について気になる方はこちらをクリック


二次関数

この記事はいかがでしたか?
もし「参考になった」「面白かった」という場合は、応援シェアお願いします!

株式会社x gardenが運営するXR-Hubの記事編集部です。

読者の皆様に役に立つ情報を発信いたします。

シェアする