C#
 Computer >> コンピューター >  >> プログラミング >> C#

C#でメソッドを定義する方法を徹底解説!基本構文とサンプルコード

メソッド(Method)とは、特定のタスクを実行するためにまとめられた一連のステートメントの集まりです。すべてのC#プログラムには、Mainという名前のメソッドを持つクラスが必ず1つ以上含まれています。

C#におけるメソッド定義の基本構文

メソッドを定義するということは、その構造を構成する各要素を宣言することにほかなりません。C#でメソッドを定義する際の基本構文は以下の通りです。

<アクセス修飾子> <戻り値の型> <メソッド名>(パラメータリスト) {
    メソッド本体
}

構文を構成する5つの要素

  • アクセス修飾子(Access Specifier) … 変数やメソッドが他のクラスからどの程度参照できるか(可視性)を決定します。publicprivateなどが該当します。

  • 戻り値の型(Return Type) … メソッドは処理結果として値を返すことができます。戻り値の型とは、その返される値のデータ型のことです。何も値を返さない場合は、voidを指定します。

  • メソッド名(Method Name) … メソッドを識別するための一意な名前です。大文字・小文字が区別され、同じクラス内に宣言されている他の識別子と同じ名前は使用できません。

  • パラメータリスト(Parameter List) … 括弧 () の中に記述し、メソッドとの間でデータを受け渡すために使われます。パラメータリストには、引数の型・順序・個数が含まれます。パラメータは省略可能で、引数を一切取らないメソッドも定義できます。

  • メソッド本体(Method Body) … 目的の処理を完了させるために必要な命令文の集合です。この中に実際のロジックを記述します。

メソッド定義の実例:文字列がユニークな単語かどうかを判定する

ここでは、文字列内に重複した文字がないか(すべての文字がユニークかどうか)を判定するメソッド CheckUnique() を作成してみましょう。二重ループを使って各文字同士を比較し、重複が見つかった時点で false を返します。

サンプルコード

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

public class Demo {

    public bool CheckUnique(string str) {
        string one = "";
        string two = "";

        for (int i = 0; i < str.Length; i++) {
            one = str.Substring(i, 1);
            for (int j = 0; j < str.Length; j++) {
                two = str.Substring(j, 1);
                if ((one == two) && (i != j))
                return false;
            }
        }
        return true;
    }
    static void Main(string[] args) {
        Demo d = new Demo();
        bool b = d.CheckUnique("amit");
        Console.WriteLine(b);

        Console.ReadKey();
    }
}

実行結果

True

この例では、文字列 "amit"CheckUnique() メソッドに渡しています。すべての文字が重複なくユニークであるため、結果として True が出力されます。このように、メソッドを定義して呼び出すことで、処理を部品化し、再利用性の高いコードを書くことができます。

  1. JavaScriptでメソッドを借りる方法とは?call()・apply()・bind()の使い方を解説

    JavaScriptでは、call()、apply()、bind() の3つのメソッドを使うことで、他のオブジェクトが持つメソッドを「借りて」実行することができます。このテクニックは「メソッドの借用(Method Borrowing)」と呼ばれ、コードの再利用性を高めるために広く活用されています。call()・apply()・bind() の違いcall():第1引数に this として渡したいオブジェクトを指定し、残りの引数はカンマ区切りで個別に渡します。呼び出し時に即座に実行されます。apply():call() とほぼ同じですが、引数を配列(または配列風オブジェクト)としてまとめて渡す点

  2. Rubyのメソッド入門:defキーワードで独自のメソッドを定義する方法

    Rubyにおける「メソッド」とは、特定の目的のためにひとまとめにされた、1行以上のRubyコードのことです。 このコードのまとまりには名前が付けられており、一度定義してしまえば、同じコードを何度も書いたりコピー&ペーストしたりすることなく、必要なときにいつでも再利用できます。 メソッドの主な役割 メソッドの目的は、大きく分けて以下のようなものがあります。 情報を取得する オブジェクトを変更・生成する データをフィルタリング・整形する 具体例 例1: Arrayオブジェクトに対するsizeメソッドは、配列内の要素数を返します(情報の取得)。 例2: popメソッドは、配列から最後の要素を取り