はなちるのマイノート

Unityをメインとした技術ブログ。自分らしくまったりやっていきたいと思いますー!

【Unity】メソッドやプロパティをラムダ式で記述する

はじめに

今回はメソッドとプロパティをラムダ式で記述することについての記事になります。

こちらはC#6での機能なので、Edit > Project Settings > Playerから、.NET 4.xを選択しましょう。

f:id:hanaaaaaachiru:20190324194408p:plain

メソッドやプロパティをラムダ式で記述するための条件

メソッドをラムダ式で記述するための条件があります。
それは「=>」演算子の右側に中かっこ「{」と「}」)を置く形式のラムダ式は使えないことです。

メソッドをラムダ式で記述する

public void PlayBGM() => _attachBGMSource.Play();

このようにラムダ式を用いて記述することができます。

また、こちらのメソッドは以下のメソッドと同じものになります。

public void PlayBGM()
{
    _attachBGMSource.Play();
}


また引数があっても全然OKです。

public void PlayBGM(AudioSource audioSource) => audioSource.Play();

プロパティをラムダ式で記述する

こちらは読み取り専用プロパティのときに使うことができます。

public class Person
{
    public string FirstName { get; set; }
    public string LastName { get; set; }

    public string GetFullName => FirstName + "" + LastName;
}

このようにラムダ式を用いて記述することができます。

また、こちらのプロパティは以下のメソッドと同じものになります。

public class Person
{
    public string FirstName { get; set; }
    public string LastName { get; set; }

    public string GetFullName
    {
        get
        {
            return FirstName + "" + LastName;
        }
    }
}

さいごに

ここは使えるかな?という場面に出合ったら、じゃんじゃん使ってみたいと思います!